Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.089 c
14-1132427628
YurikGL
2005-11-19 22:13
2005.12.11
Помогите с мат. моделью.


14-1132530722
SVASH
2005-11-21 02:52
2005.12.11
USBPRINT.SYS


3-1130265477
Xerx
2005-10-25 22:37
2005.12.11
Информация по работе с Paradox


14-1132074231
Неудачник
2005-11-15 20:03
2005.12.11
ПИШУ КУРСОВОЙ! ПОМОГИТЕ! ОСТАЛОСЬ 20 дней!


1-1130944437
Игорь Степанов
2005-11-02 18:13
2005.12.11
Русификация текста стандартных диалоговых окон