Вниз
Скачать: CL | DM;

Еще вопрос про языки   Найти похожие ветки 

← →
SergSh   (2003-09-30 17:46) [0]

Здравствуйте, у меня в кмпоненте Тнтмемо есть текст на казахском илил другом каком-либо языке, так вот надо этот текст сохранить в файл, и так же загрузить из файла. Но как это сделать, если при сохранении какая-то чушь получается, то же самое что и при загрузке. ПОМОГИТЕ PLS!!


← →
Rem ©   (2003-09-30 18:01) [1]

THTMemo? Что за зверь? Чем TMemo плох?


← →
Тих   (2003-09-30 20:42) [2]

%-)
М-дя, эт уже сложнее, чем компоненты проинсталлировать )
Итак,
1) Можно сохранять как есть в юникоде. В 98-блокноте читаться не будет, и в других ANSI-редакторах, не поддерживающих Unicode, тоже. Каждый символ хранится как 2 байта, а в начале файла (опционально) идет сигнатура (признак того, что этот текстовый файл - юникодовый) - два байта 255 и 254. Ее может и не быть, в таком случае многие редакторы исп-ют API-функцию IsTextUnicode.
Твоя задача сводится к тому, чтобы: открыть файл на запись, вписать туда сигнатуру, далее каждый символ строки в виде WideChar, закрыть файл.
2) Перевести юникод в ANSI (или обычным присваиванием varAnsiString := varWideString, или используя апи-функцию WideCharToMultiByte. Причем кодовая страница ANSI в системе или в текущем потоке должна быть казахской, иначе вся казахскость потеряется)


← →
SergSh   (2003-09-30 20:48) [3]

Спасибо большое ! :)


← →
Тих   (2003-09-30 21:07) [4]

В общем-то ты можешь выкинуть юникодовые компоненты к лешему, только проставь нужную тебе локаль в главном потоке (см. SetThreadLocale). Но если делать как положено, то лучше юникод.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-40441
Ser_ega
2003-10-02 23:35
2003.10.13
Дата


4-40732
Dest
2003-08-08 11:49
2003.10.13
Мешает чужая иконка в трее


4-40728
k@rt
2003-08-08 15:58
2003.10.13
Меню и подменю


1-40397
uhnin
2003-09-30 23:17
2003.10.13
Delphi 5 ServisPack


1-40479
Peter
2003-10-02 13:45
2003.10.13
Есть добрые люди?




   Наверх