Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль

Купить рекламу на форуме 15-35 тыс рублей в месяц

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы Поиск в этой теме
Старый 22.08.2007, 21:03   #1
Arteom
Пользователь
 
Регистрация: 22.08.2007
Сообщений: 59
По умолчанию чтение файла

Подскажите пожалуйста вот по какому вопросу: нужно считывать по байтно файл и записывать все это в массив, чтобы потом можно было в цикле гонять каждый байт. Что посоветуете?
Arteom вне форума Ответить с цитированием
Старый 22.08.2007, 21:48   #2
Showy
Форумчанин Подтвердите свой е-майл
 
Аватар для Showy
 
Регистрация: 08.08.2007
Сообщений: 183
По умолчанию

Писал сразу не проверял может где-то неправильно
вот так:
.....................
var
file:TFileStream;
count:integer;
buffer:array[0..1023] of byte;
begin
file:=TFileStream.Create('MyFile.ex e',fmopenread);

repeat
count:=file.read(buffer,sizeof(buff er));
//тут записываешь в массив
until count<1024;

file.free;
end;
................
или так
.....................
var
file:TFileStream;
count:integer;
b:byte;
begin
file:=TFileStream.Create('MyFile.ex e',fmopenread);

repeat
file.read(b,sizeof(buffer));
//тут записываешь в массив
until file.position<=file.size;

file.free;
end;
................
Until The End Of Time
Showy вне форума Ответить с цитированием
Старый 22.08.2007, 21:53   #3
Arteom
Пользователь
 
Регистрация: 22.08.2007
Сообщений: 59
По умолчанию

а нельзя как-нибудь так, чтобы заводился массив с таким же количеством элементов, сколько будет считано из файла байт?
Arteom вне форума Ответить с цитированием
Старый 22.08.2007, 22:04   #4
Showy
Форумчанин Подтвердите свой е-майл
 
Аватар для Showy
 
Регистрация: 08.08.2007
Сообщений: 183
По умолчанию

Насчет создания массива который будет равен рамером размеру файла не знаю как, не пробовал
Until The End Of Time
Showy вне форума Ответить с цитированием
Старый 23.08.2007, 08:25   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,803
По умолчанию

Цитата:
Сообщение от Arteom Посмотреть сообщение
а нельзя как-нибудь так, чтобы заводился массив с таким же количеством элементов, сколько будет считано из файла байт?
Можно :

buffer:array of byte; // Динамический
....
SetLength(buffer,file.size);
count:=file.read(buffer,sizeof(buff er));
....


Только ты зря выбрал для переменной файла такое имя.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.08.2007, 21:22   #6
Arteom
Пользователь
 
Регистрация: 22.08.2007
Сообщений: 59
По умолчанию

спасибо всем кто поучаствовал, я вроде разобрался
Arteom вне форума Ответить с цитированием
Старый 27.08.2007, 18:15   #7
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

мда... BlockRead, BlockWrite забыли что ли?
zetrix вне форума Ответить с цитированием
Ответ
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение файла [Smarik] Помощь студентам 8 28.04.2008 22:15
Чтение из файла... Bill Gates Общие вопросы Delphi 3 22.03.2008 22:13
Чтение файла Stanislav Общие вопросы Delphi 18 24.11.2007 20:45
Чтение из файла Need_Help Паскаль, Turbo Pascal, PascalABC.NET 5 19.05.2007 05:37
чтение файла vicvtor Общие вопросы Delphi 4 27.11.2006 12:26