在我的应用程序中,我使用 CHCSVWriter 生成一个 UTF8 编码的 CSV 文件,并使用 QLPreviewController 显示它。该文件可能有一些特殊字符,例如变音符号(ü,ä),我已经检查了这些文件并且它们正在正确生成。然而,当它们用 QLPreviewController 显示时,字符就搞砸了!我已经检查了我的编码,它们都是 UTF-8,所以代码点没有被破坏。QLPreviewController 有问题吗?有什么建议么?
这是我用来创建和显示 CSV 文件的代码:
NSString *path = @"my path";
CHCSVWriter *csvWriter = [[CHCSVWriter alloc] initWithCSVFile:path atomic:NO];
csvWriter.encoding = NSUTF8StringEncoding;
NSDictionary* w;
for (w in items) {
[csvWriter writeField:[w valueForKey:@"a"]];
[csvWriter writeField:[w valueForKey:@"b"]];
[csvWriter writeLine];
}
[csvWriter closeFile];
[csvWriter release];
QLPreviewController *ql = [[QLPreviewController alloc] init];
[ql setDataSource:self];
[self presentModalViewController:ql animated:YES];
[ql release];
这是正在显示的内容: