Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.08.09;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.01 c
3-1225653941
lamer6666
2008-11-02 22:25
2009.08.09
Можно ли одной командой Inset вставить данные в две таблицы?


15-1244320205
Юрий
2009-06-07 00:30
2009.08.09
С днем рождения ! 7 июня 2009 воскресенье


2-1245062615
Petr
2009-06-15 14:43
2009.08.09
Работа с MS Word


15-1244613139
Василий Иванов_22
2009-06-10 09:52
2009.08.09
уравнение


2-1244756223
lubanic
2009-06-12 01:37
2009.08.09
Изменение формы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский