Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизНеверный ввод в текстовый файл Найти похожие ветки
← →
RealFreeman (2005-11-22 16:32) [0]Суть проблемы такова: при записи данных в файл с помощью FileWrite происходит непонятная смена кодировки. Причем делая так:
var
tmpValue: string;
hFile: THandle;
...
begin
hFile:= CreateFile(...);
tmpValue:="Привет";
FileWrite(hFile, tmpValue, length(tmpValue));
FileClose(hFile);
end.
В итоге получаю файл с непонятным содержимым, причем не зависимо от языка. Используя явное указание:
FileWrite(hFile, "Привет!", length(tmpValue));
получаю верный результат. Но т.к. в файл нужно выгружать данные из базы в определенном формате, использовать явное указание не получится.
ОС - Win2000, Delphi 7.
← →
Anatoly Podgoretsky © (2005-11-22 16:36) [1]function FileWrite(Handle: Integer; const Buffer; Count: Integer): Integer;
А ты почему вместо адреса буфера передаешь адрес переменной tmpValue?
← →
Digitman © (2005-11-22 16:38) [2]
> смена кодировки
нет там никакой "смены кодировки" - просто в файл пишется вовсе не то что ты ожидаешь.
правильно будет так :
FileWrite(hFile, PChar(tmpValue)^, length(tmpValue));
либо так
FileWrite(hFile, tmpValue[1], length(tmpValue));
см. [1]
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.041 c