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

Вниз

Не могу сделать перекодировку   Найти похожие ветки 

 
Frozzen   (2004-12-17 17:39) [0]

Подскажите в чем дело, пишу следующие

buf : array [1..4000]of Char;
RecordBuffer : array [1..4000]of Char;
DFile: TFileStream;
S : String;

заполнение буфера
 RecordBuffer[i] := S[i];

запись в файл для каждой строки
CharToOem(@RecordBuffer, @buf);
DFile.WriteBuffer(Buf, FHeader.RecordSize);

Первая строчка записывается в нужной кодировке, остальные нет ?


 
TUser ©   (2004-12-17 17:46) [1]

Там поинтеры на null-terminated string. Соотвественно CharToOem доходит до первого нулевого символа и заканчивает свою работу. Решение - по отдельным строчкам перекодировать


 
MBo ©   (2004-12-17 17:46) [2]

после строки-источника ноль добавь


 
Frozzen   (2004-12-17 17:52) [3]

посмотрел дебагером
первый раз проходит все успешно
а во второй в RecordBuffer перед CharToOem
уже в дос кодировке


 
Frozzen   (2004-12-17 17:53) [4]

почему не понемаю


 
Frozzen   (2004-12-17 17:56) [5]

насчет добавления нуля не понял
тормажу, целый день уже этот конвектор пишу


 
Alexander Panov ©   (2004-12-17 18:57) [6]

Используй OemToCharBuff



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
1-1103207093
Bless
2004-12-16 17:24
2005.01.02
Что вызывается вместо inherited в данном случае?


4-1098984080
mr_alexandr
2004-10-28 21:21
2005.01.02
Работа с портами в Делфи


14-1101480561
Alexander Panov
2004-11-26 17:49
2005.01.02
Победа Януковича. Противостояние. (продолжение)


3-1102342733
vvllaadd
2004-12-06 17:18
2005.01.02
Подскажите пожалуйста, как запретить выделение ячейки в TDBGrid


14-1102509436
Alexander Panov
2004-12-08 15:37
2005.01.02
Победа Януковича. Противостояние. (продолжение. Часть 3)