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

Вниз

Двоичные файлы   Найти похожие ветки 

 
Gigik   (2007-09-28 13:22) [0]

Добрый день. Как работать с двоичными фалами? Как их открыть и изменять как мне хочется. Спасибо!


 
Сергей М. ©   (2007-09-28 13:27) [1]


> Как работать с двоичными фалами?


Так же как и с любыми другими фалами.


 
DVM ©   (2007-09-28 13:42) [2]


> Как их открыть

CreateFile(), например, открывает любой файл и неважно двоичный он или текстовый.


> и изменять

WriteFile()

Вот тебе пример лога:

procedure Log(const LogFileName: string; LogMessage: string;);
var
 hLogFile: HFILE;
 dwPointer: DWord;
 Len: integer;
 NumberOfBytes: Cardinal;
begin
 LogMessage := TimeToStr(Time) + " - " + LogMessage + #13#10;
 hLogFile := CreateFile(PChar(LogFileName), GENERIC_WRITE, FILE_SHARE_READ or
                        FILE_SHARE_WRITE, nil, OPEN_ALWAYS,
                        FILE_ATTRIBUTE_NORMAL or FILE_FLAG_WRITE_THROUGH, 0);
 if hLogFile <> INVALID_HANDLE_VALUE then
   begin
     dwPointer := SetFilePointer(hLogFile, 0, nil, FILE_END);
     if dwPointer <> $FFFFFFFF then
       begin
         Len := lstrlen(PChar(LogMessage));
         WriteFile(hLogFile, LogMessage[1],  Len, NumberOfBytes, nil);
       end;
     CloseHandle(hLogFile);
   end;
end;


 
Anatoly Podgoretsky ©   (2007-09-28 13:49) [3]

> Gigik  (28.09.2007 13:22:00)  [0]

Методов открытия множество, а изменение - это изменение байтов в буфере, с последующей записью в файл.


 
Anatoly Podgoretsky ©   (2007-09-28 14:03) [4]

> DVM  (28.09.2007 13:42:02)  [2]

Важно, он открывает всегда двоичный, высокоуровневые функция Паскаля не доступны.


 
Рамиль ©   (2007-09-28 14:26) [5]

TFileStream + F1



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
15-1190295780
S@shka
2007-09-20 17:43
2007.10.21
Утилита досупа к MS SQL ?


15-1190414620
Kostafey
2007-09-22 02:43
2007.10.21
А форум-то наш клиентами самый богатый.


15-1190291341
ace_
2007-09-20 16:29
2007.10.21
что мне дальше делать?


6-1172234450
Sp1r1t
2007-02-23 15:40
2007.10.21
Передача массива по сети


2-1191156516
Kostya2x
2007-09-30 16:48
2007.10.21
Разбор текста с "тегами" и вывод его на RichEdit