Swift怎么将读取到的byte转换成gbk编码的string

cmnewfan 2015-10-22 04:44:01
一开始我是转换成UTF-8编码的:
NSString(bytes: data!, length: data!.count, encoding: NSUTF8StringEncoding)

但由于源数据里面有中文字符,一到中文字符时,就直接报错了,但是编码里面也没有转到GBK编码的选项。
...全文
564 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cmnewfan 2015-10-23
  • 打赏
  • 举报
回复
引用 1 楼 xjmeplws 的回复:
kCFStringEncodingGB_18030_2000,gbk
我现在是这么用的了 var inputStream :NSInputStream? var outputStream:NSOutputStream? NSStream.getStreamsToHostWithName(ip, port: port, inputStream: &inputStream, outputStream: &outputStream) let reader = inputStream let writer = outputStream writer?.open() reader?.open() var message : UInt8 = 0 while reader!.read(&message, maxLength: 1)>0 { let wa = NSString(bytes: &message, length: 1, encoding: CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(CFStringEncodings.GB_18030_2000.rawValue))) as! String } 但是一遇到中文字符就报错了 fatal error:unexpected found nil while unwrapping an optional value
xjmeplws 2015-10-23
  • 打赏
  • 举报
回复
kCFStringEncodingGB_18030_2000,gbk

1,420

社区成员

发帖
与我相关
我的任务
社区描述
Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C共同运行于MAC OS和iOS平台,用于搭建基于苹果平台的应用程序。
swift 技术论坛(原bbs)
社区管理员
  • Swift
  • 网罗开发
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧