2015-07-22 9 views
0

У меня есть база данных SQLite, которая содержит значения со странными символами, такими как ü, é и т. Д. SQLite по умолчанию является UTF8, и значения хорошо выглядят в инструменте базы данных.Получить текст Unicode из SQLite DB

Теперь мне нужно заполнить меню опций в Livecode с этими значениями. Когда я

put uniencode ("Krüger", "utf8") into tData 
set the text of button "option" to tDAta 

я получить правильное значение в кнопке выбора, но глядя странно с большими расстояниями, как "K r ü g e r" вместо "Krüger" Edit: Это, кажется, что текст отображается в «полной ширины». Я использую Tahoma, но изменение шрифта не имеет значения.

Если я не делаю uniencode, я получаю "Krüger".

Я также пробовал set the unicodetext of button "option" to tData, но это дало мне одну строку китайского или japanse символов или около того.

Где моя ошибка?

Я использую Livecode 7.0.6.

+0

Хм, похоже, что я сделал ошибку при импорте данных в БД, так что Безразлично» t кажется UTF8 в начале. Теперь я редактирую таблицы непосредственно и не буду выполнять другой повторный импорт, чтобы их сортировать. – Tate83

ответ

3
 put textDecode(MyVariable,”UTF8”) into NewVariable 
+0

Awesome, спасибо! Просто прочитайте об этом в примечаниях к выпуску, и это то, что я обязательно сделаю со всем текстом, идущим в db. – Tate83

+0

Это для того, чтобы идти другим путем ... поступающим из БД. – beofonemind

0

В uniencode и unidecode функции устаревший LiveCode 7. В вашем примере, попробуйте:

put revDataFromQuery(,, tConnectionId, tQuery) into tUTF8data 
set the text of button "option" to textDecode(tUTF8data,"utf8") 
+0

Спасибо! Я просто удалил все «uniencode» и «unidecode» из своего кода и выполнил «textdecode» при загрузке данных из БД. Решила оставшиеся проблемы с unicode, которые у меня были – Tate83