Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: 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 вся ветка

Текущий архив: 2003.10.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
6-40556
SergP
2003-08-14 12:59
2003.10.13
TServerSocket.Socket.Disconnect соединения неправильно работает??


7-40696
waw
2003-07-25 14:52
2003.10.13
Комманда mount и блокировка CDROM


14-40678
kaif
2003-09-23 14:54
2003.10.13
Firebird Manager


1-40488
plyaznik
2003-10-02 12:38
2003.10.13
помогайте, мастера


14-40673
jack128
2003-09-23 16:26
2003.10.13
Именинники 23 сентября