先搞清楚,原来字符用神马编码,可以先用mac 自带记事本 打开一下,进行测试。(记事本偏好设置,打开和存储选项卡中查看)
然后转换支持的编码方式
QLPreviewController
打开文本文件乱码, 即使用utf-8编码也是显示乱码, 经过尝试必须先将文本文件(txt…)从非ASCII或unicode(utf-16)转码为ASCII或是unicode(utf-16)
原来用kCFStringEncodingGB_18030_2000编码,转换为kCFStringEncodingUTF16
NSStringEncoding enc =CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString *retStr =[[[NSStringalloc]initWithData:downloadDataencoding:enc] autorelease];
NSStringEncoding enc2 =CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingUTF16);
NSData *data = [retStr dataUsingEncoding:enc2];
NSString *dataStr =[[[NSStringalloc]initWithData:data encoding:enc2]autorelease];
[dataStr writeToURL:finalURL atomically:YES encoding:enc2error:nil];