В моем приложении я создаю CSV-файл в кодировке UTF8 с помощью CHCSVWriter и отображаю его с помощью 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];
А вот что отображается: