Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
4-40748
jav
2003-08-04 17:52
2003.10.13
Получение кода возврата процесса из консольного приложения


14-40621
Ihor Osov'yak
2003-09-24 21:38
2003.10.13
Умей говорить с подчиненными !


6-40551
SM
2003-08-07 15:33
2003.10.13
Как избавиться от сообщения об ошибке при попытке коннекта сокета


14-40644
Yakudza
2003-09-23 11:45
2003.10.13
MacOS


3-40291
Buka
2003-09-21 10:25
2003.10.13
Приведение в работоспособность библиотечного компонента





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский