|
#1
|
|||
|
|||
Работа с JSON
Здравствуйте!)
Такая проблемка: С помощью потока авторизуюсь на сайте методом Post, компонент idHTTP, и возвращаемую строку присваиваю переменной Сервер возвращает JSON-массив Для работы с ним использую модуль uLkJSON Парсирую текст, вытаскиваю нужные мне значения в Memo и тут возникает проблема Если значение в JSON содержит русские буквы, то они отображаются как знаки вопросов Надеюсь на вашу помощь) Вот код: Код:
.... var js:TlkJSONobject; s: string; nick,pass: String; stream: TStringStream; .... begin js := TlkJSONobject.Create; stream:=TStringStream.Create; nick := Edit1.Text; pass := Edit2.Text; stream.WriteString('u='+nick+'&p='+pass); s := (IdHTTP1.Post('http://.....',stream)); js := TlkJSON.ParseText(s) as TlkJSONobject; Memo1.Lines.Add(js.getString('user_id')); Memo1.Lines.Add((js.getString('username'))); Memo1.Lines.Add(js.getString('new_pm')); Memo1.Lines.Add(js.getString('unread_pm')); js.Free; .... |
#2
|
||||
|
||||
UTF8Decode?
Или гугл "Преобразование кодировок Delphi" Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj Последний раз редактировалось PhoeniX, 03.07.2010 в 18:36. |
#3
|
|||
|
|||
Цитата:
пробовал все способы, уже 4 дня мучаюсь, иначе бы сюда не писал |
#4
|
|||
|
|||
Какая винда (рус.англ), какие настройки в Regional settings?
|
#5
|
|||
|
|||
русская, полностью русская windows 7 x64 7600
|
#6
|
|||
|
|||
А попробуйте OEMconvert в true выставить
|
#7
|
||||
|
||||
мой вариант в подобном был такой:
тупо прогонял тест через AnsiReplaceText(str,'','',[]); и текст становился нормальным)) |
#8
|
|||
|
|||
вопрос снят, всем спасибо) взял другой модуль
если кому нужно - используйте не ulkJSON, а uJSON, он круче |