Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Unicode-->ANSI   Найти похожие ветки 

 
nitrino   (2004-05-27 04:07) [0]

Подскажите как можно преобразовать данные, взятые из текстового файла формата Unicode, в ANSI?

Файл типа TextFile, читаю в WideString.
WideCharToString выдает непонятно что (делаю так:

var
 str : WideString;
 s : string;
 Txt : TextFile;

..

ReadLn (Txt,str);
s := WideCharToString (@str);

в результате в s что то типа ???|B???B?B|B??????


 
Глеб ©   (2004-05-27 04:40) [1]

Пиши не textfile, а file of widechar!
Должно работать.
А зачем вообще преобразовывать WideChar в ANSI?


 
Игорь Шевченко ©   (2004-05-27 12:39) [2]

readln не работает с Unicode

Рекомендую читать другим способом, тогда перекодировка должна нормально работать


 
nitrino   (2004-05-27 14:44) [3]

Дело в том, что мне надо считаывать/записовать в текстовый файл в кодировке Unicode и при этом шифровать/дешифровать информацию. Можно ли шифровать/дешифровать не преобразуя в ANSI? А вообще это будет DLL которая будет фозвращать текст из файла в расшифрованом виде.


 
nitrino   (2004-05-27 15:35) [4]

Дополнение: в файле записан текст на латышском, когда читаю таким образом:

var
Txt : file of widechar;
str : widechar;
s,a : widestring;
..
assignfile (txt,"c:\texts.txt");
reset(txt);
while not eof(txt) do
begin
read(txt,str);
s:=s+str;
end;
memo1.Lines.Add(s);

тогда все ок никаких ??|B???|B??? нету, НО специальные латышские символы не показываются, т.е. вместо š - s, ā - a, č - c и т.д.
не могу понять в чем проблема помогите пожалуйста!!!


 
Петров Денис ©   (2004-05-27 15:59) [5]

А они и не будут показываться - их просто нет в твоей текущей кодовой странице ANSI.

IMHO, смысла нет в том, что ты делаешь. Хочешь зашифровать текст - шифруй. Рассматривай его просто как набор байт. А зачем для шифрования набора байт знать, в каком формате они хранятся?



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
14-1084861551
anstrem
2004-05-18 10:25
2004.06.06
Есть место для программиста Delphi в Москве


1-1085136603
S@shka
2004-05-21 14:50
2004.06.06
"Простейший" ScreenSaver


1-1085382707
Proox
2004-05-24 11:11
2004.06.06
Проблема с XLSReadWriteII


1-1085130912
Barsky
2004-05-21 13:15
2004.06.06
При НЕактивном окне нужно реагировать на нажатие горячих клавиш.


4-1083207979
Yus
2004-04-29 07:06
2004.06.06
Нажатие кнопки (API)