Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как прочитать и записать файл побайтно и при этом видеть ход! [D7, Win95/98, WinME, NT4, Win2k, WinXP]


V'ent ©   (2004-11-15 09:18:00) 

Ребята!!! Есть просьба.
Я пытаюсь написать программу, в которой я побайтно смог бы переписать файл при этом я хочу видеть ход переписывания с помощью компонента ProgressBar.
Что нужно мне использовать для этого?
Я примерно понимаю что нужно открыть файл, потом его читать по байтно, и аналогично записывать его!!!!


Fay   (2004-11-15 16:38:00) [1]

2 V'ent   (15.11.04 15:08) [15]
А надо думать совсем 8)


V'ent   (2004-11-15 15:08:00) [2]

Значит так!

KADAN, Amoeba © <- Спасибочки, но к сожалению не подошло!
Fay © <- Я тоже так думаю, но не совсем!
NAlexey © <- А вот тебе огромное спасибо, очень хорошо работает, скорость то что надо, качество супер!!! :)

А вооще всем спасибо за помощь, все получилось. ;)


Fay   (2004-11-15 13:52:00) [3]

CreateFile, ReadFile, WriteFile. И будет щястье 8)


NAlexey   (2004-11-15 13:51:00) [4]

BlockRead, BlockWrite.


KADAN   (2004-11-15 13:26:00) [5]

SHFileOperation


Amoeba   (2004-11-15 12:34:00) [6]

Может это поможет?
http://www.delphikingdom.com/asp/viewitem.asp?UrlItem=/mastering/fileshellapi.htm


V'ent   (2004-11-15 12:31:00) [7]

Fay © -> CopyFileEx не на всякой винде пойдёт.
Ага, я уже понял это!

Да скорость жедает лучшего (если читать побайтово).
Ладно обьясню по проще!
Я програмно переписываю файл xxxxxx.xxx в другой каталог, мне нужно видеть ход переписывания с помощью BrogressBar -ра.
Побайтно получилось, но б&@ха  скорость желает лучшего.

Вопрос: Есть ли какая то процедура или компонент с помощью которого я это дело могу отслеживать?


grig_p   (2004-11-15 12:08:00) [8]

> KilkennyCat ©   (15.11.04 11:43) [7]
Не припомню такого случая в своей практике. Всегда было БЫСТРЕЕ прочитать файл целиком, а затем обрабатывать его в памяти. Правда, если нужно сначала читать заголовок файла, а по результатам чтения делать вывод о том, нужно ли читать весь файл - тогда оптимально читать первый блок (опять таки целиком, а не побайтово). ;)


Fay   (2004-11-15 11:48:00) [9]

2 V'ent   (15.11.04 11:23) [6]
CopyFileEx не на всякой винде пойдёт.


KilkennyCat   (2004-11-15 11:43:00) [10]


> grig_p   (15.11.04 10:43) [5]


а ежели еще серъезней подумать? может, все-таки есть ситуации, когда по-байтно - оптимально?


V'ent   (2004-11-15 11:23:00) [11]

Спасибо KilkennyCat © мне помогло, вспомнил наконец то, я уже давно книжки не читаю особенно  "Программирование для начинающих" ее я читал лет так 6 назад если не больше, просто забыл.

grig_p соглачен с тобой, тогда подскажи более умный вариант!!!

И еще одно, я тута вспомнил что возможно это сделать с помощью CopyFileEx - могет у каво есть какие то соображения!


grig_p   (2004-11-15 10:43:00) [12]

побайтно читать неоптимально. это я серьезно.


Fay   (2004-11-15 09:43:00) [13]

1) Куда прислать?
2) Пример чего? Всего?


KilkennyCat   (2004-11-15 09:43:00) [14]

f_read, f_save : file of byte;
b : byte;
 в таком варианте объявления, read(f_read, b) и write(f_save, b) всегда будут побайтово...

для работы с прогрессом нужно лишь узнать длину файла... filesize(f_read), если не ошибаюсь...

но перед этим стоит прочитать книжку типа "Программирование для начинающих"


V'ent   (2004-11-15 09:38:00) [15]

Ладно тогда как? Могешь прислать пример?


Fay   (2004-11-15 09:23:00) [16]

Я примерно понимаю, что ты примерно понимаешь правильно.
Так и сделай. Только не обязательно читать/писать именно "побайтно" 8)


Наверх

Титульная страница Поиск, карта сайта Написать письмо