Sqlite3 на Iphone: использование неанглийских символов - PullRequest
1 голос
/ 11 сентября 2010

Я разрабатываю приложение для Iphone, которое использует неанглийские строки (иврит) в базе данных sqlite3.

Однако приложение отображает мои данные только при использовании английских строк!Значения с ивритскими символами возвращают ноль.

  1. Я попытался добавить строки иврита через sqlite на mac в терминале - но sqlite даже не распознает символы, когда я их печатаю (хотя терминал это делает).

  2. Итак, я попытался создать базу данных в Windows.База данных принимала мои специальные символы, поэтому я перенес их в Mac.Символы до сих пор не отображались на Iphone.

При проверке в sqlite в терминале я получил результаты с вопросительными знаками вместо символов:

1 | ??????????????????? | 31 | 34

2 | ??????????????????? | 31 | 34

3 | ??????????????- ??? | 31 | 34

Когда iphone получает данные в приложении, с кодом:

NSLog(@"Name: %@", [NSString stringWithUTF8String:(char *) sqlite3_column_text(compiledStatement, 1)]);

Все, что я получаю, это нулевые значения:

2010-09-11 13: 20: 20,096 tr [928: 207] Имя: (ноль)

2010-09-11 13:20: 20,096 тр [928: 207] Имя: (ноль)

2010-09-11 13: 20: 20,097 тр [928: 207] Имя: (ноль)

Что еще я мог попробовать?

Спасибо!

1 Ответ

2 голосов
/ 11 сентября 2010

Нашел решение ...

Содержание не прошло хорошо из созданных окон файлов db3.

Итак, я скопировал фактические команды sql в текстовый файл, иЗатем в sqlite3 на Mac начались все эти команды (с «.read»).Результат: Рабочие символы UTF-8:)

...