Основные данные и специальные символы (UTF-8) - PullRequest
1 голос
/ 15 июня 2010

У меня есть приложение для iPhone, использующее Core Data с базой данных SQLite внизу. Я записываю некоторый текстовый контент из базы данных в файл, но специальные символы, такие как Å, Ä и Ö, повреждены в файле (они прекрасно отображаются в приложении).

При создании и вставке данных я не использую никакой специальной кодировки. Я просто беру NSString (введенный пользователем в UITextField) и помещаю его в мои постоянные объекты. При сохранении файла я использую следующий код:

[csvString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:&error];

Я попытался добавить спецификацию в начало текста ("\ xef \ xbb \ xbf"), но она все еще повреждена. У кого-нибудь есть идеи, где проблема может быть?

Примеры искаженных символов: å становится ö, ä становится ä

Ответы [ 2 ]

1 голос
/ 16 июня 2010

Ваш пример коррупции выглядит как правильные символы UTF-8, интерпретируемые как ISO-8859-1. Как вы просматриваете файл? Вы уверены, что используемая вами программа просмотра на самом деле интерпретирует файл как UTF-8?

0 голосов
/ 16 июня 2010

Вы пытались изменить кодировку на NSUTF16StringEncoding?

...