Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка - файл не найден, всю голову сломал уже :( 
:(
    Опции темы
TP@MB@Y
Дата 10.2.2005, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Пишу прогу, суть которой - разделение файла на две части (в два разных файла)

Код

{Определяем длинну файла}
i:=0;
while not eof(f_in) do
 begin
  read(f_in,buf);
  i:=i+1;
 end;
size:=i;
c:=size div 2;
reset(f_in);

assign(f_out1,file_out1);
rewrite(f_out1);

for i:=0 to c do
 begin
  read(f_in,buf);
  write(f_out1,buf);
 end;
close(f_out1);

assign(f_out2,file_out2);
rewrite(f_out2);

while not eof(f_in) do
 begin
   read(f_in,buf);
   write(f_out2,buf);
 end;

close(f_out2);
close(f_in);


выдает вторую ошибку в реале (файл не найден)
Исходный файл существует точно и открывается reset'ом без ошибки.

Я пробовал просто копировать файл - все окей, но когда копирую сначала в один а потом в другой - выдает эту ошибку =(

Незнаю в чем проблема.
PM   Вверх
Vit
Дата 10.2.2005, 04:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: нет
Всего: 207



1. Зачем так длину определять?
2. Какой тип buf
3. А перед приведенным кодом какой код?
4. Посмотрите функции BlockRead/BlockWrite - гораздо быстрее работать будут


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Snowy
Дата 10.2.2005, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: нет
Всего: 484



1.Чтобы определить длину, незачем читать файл. Насколько я помню паскаль, FileSize там должна работать.
2. Посмотри описание BlockRead - там есть пример копирования файла.
3. Если файл f_in уже дошел до конца, то бесполезно из него читать дальше - получишь ошибку. Нужно его сначала на начало сбросить, а потом уже копировать во второй файл.
PM MAIL   Вверх
TP@MB@Y
Дата 10.2.2005, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Нашел ошибку smile
С файлами все я правильно делал, там с именам глюки вышли.

Всем спасибо!
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0437 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.