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

Вниз

Как читать файл по байтам?   Найти похожие ветки 

 
Nikfel   (2009-06-07 19:12) [0]

Подскажите, пожалуйста. Как прочитай несколько байт из файла? Я вроде видел где-то на сайте код, но сейчас найти не могу. Там вроде была проверка что архив rar, за счет чтения нужных байт из файла.


 
Nikfel   (2009-06-07 20:12) [1]

Я так понимаю надо использовать это:
FileCreate( s, flags )
FileClose( f ) - закрывает файл;
FileExists( s ) - проверяет наличие файла по заданному пути;
FileRead( f, buffer, n ) - читает байты из файла в память;
FileWrite( f, buffer, n ) - пишет байты из памяти в файл;
FileEOF( f ) - проверяет, достигнут ли конец файла (при чтении);
FileSeek( f, moveto, movemethod ) - перемещает указатель чтения/записи в файле;
File2Str( f ) - читает остаток файла как строку.


 
nikfel   (2009-06-07 21:12) [2]

Можно ли пример использования посмотреть, а то разобраться не могу?


 
MTsv DN   (2009-06-07 21:27) [3]

!!!!! RTFM !!!!!

Вообще это надо в категорию "Начинающие" - это учебник по Информатике...и KOL тут не причем...

А уж коль к KOL"у привязку, то вот такой вариант:
1. S := NewReadFileStream
2. S.Position := Твой_Offset
3. S.Read( Buff, Count); // Buff : array [0..N] of Byte
4. Работа с Buff
5. S.Free

!!!!! RTFM !!!!!


 
oldman ©   (2009-06-08 11:07) [4]


> Nikfel   (07.06.09 20:12) [1]
> Я так понимаю надо использовать это:
> FileCreate( s, flags )
> FileClose( f ) - закрывает файл;
> FileExists( s ) - проверяет наличие файла по заданному пути;
> FileRead( f, buffer, n ) - читает байты из файла в память;
> FileWrite( f, buffer, n ) - пишет байты из памяти в файл;
> FileEOF( f ) - проверяет, достигнут ли конец файла (при чтении);
> FileSeek( f, moveto, movemethod ) - перемещает указатель чтения/записи в файле;> File2Str( f ) - читает остаток файла как строку.
>
> nikfel   (07.06.09 21:12) [2]
> Можно ли пример использования посмотреть, а то разобраться не могу?


Для начала хватит и этого...


 
Andy BitOff ©   (2009-06-08 11:31) [5]

Я бы использовал;
Data: PByteArray;
tmpStream := TMemoryStream.Create;
Data := tmpStream.Memory;
Data[index] := нужный_нам_байт;


 
Amoeba ©   (2009-06-08 11:42) [6]


> Andy BitOff ©   (08.06.09 11:31) [5]
>
> Я бы использовал;
> Data: PByteArray;
> tmpStream := TMemoryStream.Create;
> Data := tmpStream.Memory;
> Data[index] := нужный_нам_байт;

Лучше жевать, чем говорить!


 
Palladin ©   (2009-06-08 11:50) [7]


> Amoeba ©   (08.06.09 11:42) [6]

А в чем его ошибка?


 
Andy BitOff ©   (2009-06-08 11:56) [8]


> Amoeba ©   (08.06.09 11:42) [6]

Да, кстати, хотелось бы обоснование такого высказывания.


 
Amoeba ©   (2009-06-08 13:40) [9]

А нафига грузить в память?


 
Palladin ©   (2009-06-08 13:49) [10]

а где там загрузка?


 
Andy BitOff ©   (2009-06-08 14:06) [11]


> Amoeba ©   (08.06.09 13:40) [9]

Ну, это вопрос спорный. В зависимости от того как, каким алгоритмом происходит чтение, каков размер файла и т.п. Если при чтении надо скакать по файлу...
Кроче не о чем тут спорить. Я то думал... Такое категоричное высказывание... А на деле пшик.


 
Amoeba ©   (2009-06-08 14:18) [12]

Просто злой я сегодня ...


 
Плохиш ©   (2009-06-08 15:45) [13]


> Palladin ©   (08.06.09 13:49) [10]
>
> а где там загрузка?

А где там ответ на вопрос автора?


 
brother ©   (2009-06-15 10:45) [14]

> Там вроде была проверка что архив rar, за счет чтения нужных
> байт из файла.

первые три байта: Rar!
))))


 
brother ©   (2009-06-15 10:46) [15]

что конкретно нужно проверить?



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

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

Наверх




Память: 0.5 MB
Время: 0.015 c
3-1225709204
GanibalLector
2008-11-03 13:46
2009.08.09
FireBird и "спящий режим"


2-1244709711
a.a.j.
2009-06-11 12:41
2009.08.09
Место позиции курсора в поле html страницы


2-1244551712
SkyN
2009-06-09 16:48
2009.08.09
Память, выделенная под объект, инициализируется нулями?


15-1244700982
Рамиль
2009-06-11 10:16
2009.08.09
Бесплатные менеджеры проектов


4-1213906630
pomashok
2008-06-20 00:17
2009.08.09
Эмулирование нажатия WIN+R