Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Как переписать текстовые файлы в разные папки!

Ответить
Настройки темы
Как переписать текстовые файлы в разные папки!

Аватара для Guest

Guest



Профиль | Цитировать


У меня в разных папках находятся текстовые файлы, я открываю обсщую папку(через процедуру Обзора папок)
программа заходит в первую папку наход файлы и переписывает их, потом выходит из папки и заходит в следующую, но при открытии файла Error (Project * raised exception class EInOutError whit message 'File not Found'.
Process stopped. Use Step or Run to continue.) я пытался передовать полный путь к файлам(ExpandFileName) но результат тот же. Подскпжите как исправить?

Отправлено: 16:53, 15-10-2004

 

Аватара для fossil

Ветеран


Сообщения: 637
Благодарности: 20

Профиль | Сайт | Отправить PM | Цитировать


Guest
Может ты не очистил какую-нибудь переменную? Выложи кусок кода...

-------
Согласно непопулярному мнению, Windows - враждебная ОС.
Так получилось, что Windows не выбирает себе друзей.


Отправлено: 17:10, 15-10-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Эта процедура берет имя файла(namefile) извлекае пулный путь
и открывает через полный путь этот файл и делает с ним нужные мне действия потом удаляет его и переименовывает созданный фаил в страрый

Код: Выделить весь код
procedure TForm1.opfile(namefile:string);
var
fr,fw:textfile;
sr,sw,FullFileName,DirNameFile:string;
begin
 *FullFileName:= ExpandFileName(namefile);
 *assignfile(fr,FullFileName);
 *reset(fr);
 *DirNameFile:=ExtractFileDir(FullFileName);
 *assignfile(fw,DirNameFile+'\'+'demo.htm');
 *rewrite(fw);
 *sw:=extractfilename(namefile);
 *filename(sw,keyword);

 *if flag=0 then begin FirstFile:=namefile; flag:=1; end;

 *while (not eof(fr)) do
 * *begin
 * * *readln(fr,sr);
 * * *if (sr=edit2.Text) or (sr=edit3.Text) or (sr=edit4.Text)
 * * *then
 * * * *writeln(fw,sr+keyword)
 * * *else
 * * *writeln(fw,sr);
 * *end;
 * *memo1.Lines.Add(namefile);
 * *closefile(fr);
 * *closefile(fw);
 * *deletefile(FullFileName);
 * *renamefile('demo.htm',namefile);
 * *deletefile('demo.htm');
 * *end;
[s]Исправлено: Prisoner, 3:56 17-10-2004[/s]

Отправлено: 18:31, 15-10-2004 | #3


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


ExpandFileName не проверяет свой результат на существование. Судя по вашему вопросу первый раз все нормально т.к. директория которую использует ExpandFileName установлена таким образом, что все получается нормально, но потом директория не меняется т.е. ExpandFileName использует старые данные. Потому-то у вас при открытии файла и возникает ошибка. Попробуйте выводить куда-либо результат ExpandFileName и посмотрите на каком именно возникает ошибка, возможно это подскажет вам пути решения. Кроме того, запретить вывод ошибок I/O можно директивой компилятора {$I-}, а включить опять - уже с плюсиком. Удачи.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 04:17, 17-10-2004 | #4

invisible man


Сообщения: n/a

Профиль | Цитировать


Товарищи нужна на делфе процедура, которая будет просматривать все директории(субдириктории) с возможностью нахождения нужных файлов и редактировать их, я написал подобную вроде все исчет, но при редактировании файлов *выводит ошибку ввода вывода.
Помогите плиз!

Отправлено: 14:50, 20-10-2004 | #5


Аватара для hasherfrog

Старый параноик


Сообщения: 2423
Благодарности: 85

Профиль | Отправить PM | Цитировать


Мало информации. Приведите кусок кода, отвечающего за редактирования, в котором происходит ошибка. Хотя бы.

Отправлено: 09:32, 21-10-2004 | #6


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Я уже показывал свою процедуру мне давали не совсем коректные ответы, может потому что я задавал не совсем коректные вопросы не знаю, но дело в что я уже смотрел в инете процедуру поиска по всем коталогам и файлам в этих каталогах у меня происходит примерно все так же, но моя процедура в первой конечной папке все делает нормально, а в остальных ошибка ввода вывода - причем раньше была с открываемым файлом, а после некоторых монепуляций с создаваемым файлом(фаил создается не там где надо) хотя открытие и создание происходит вроде бы по полному пути и через одну переменную->
begin
*setcurrentdir(path+'\');
*e:=findfirst(path+'\'+'*.*',16,t);
*while e=0 do (дальше открываю папку и перебераю все файлы)
(при *нахождении нужного файла запускается другая процедура)
end;
* *e:=findnext(t);
...
assignfile(fr,FullName);(где FullName и dirname это полные пути взятые из переменной прошлой процедуры path)
*reset(fr);
*assignfile(fw,dirname+'\'+'demo.*');
*rewrite(fw);
...(сдесь я провожу с открытым файлом некот. действия и записываю в demo.* внизу я удаляю старый и переименовываю demo.* в старый)
* *closefile(fr);
* *closefile(fw);
* *deletefile(FullName);
* *renamefile('demo.*',nameoldfile);
* *deletefile('demo.*');
* *end;
в первом каталоге все нормально в остальных либо вообще ничего, либо создаётся не понятно где, через F7 все просматривал, все перменные, вроде все нормально

[s]Исправлено: invisible man, 11:47 21-10-2004[/s]

Отправлено: 11:42, 21-10-2004 | #7


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Ругайте меня и все такое, но приклеиваю к первоначальной теме.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 02:57, 22-10-2004 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Как переписать текстовые файлы в разные папки!

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Не открываются текстовые файлы и изображения и к ним создались файлы с расшир. drweb leda Лечение систем от вредоносных программ 1 03-10-2009 01:22
Учетные записи в разные папки lleWxaM Microsoft Exchange Server 3 25-07-2008 08:43
Скрипт качает бекап с фтп. Как застравить качать в разные папки? mooseyaka Программирование и базы данных 4 28-05-2007 13:41
[решено] Как удалить файлы с папки...? Cobra_1_Stas Автоматическая установка Windows 2000/XP/2003 40 10-10-2006 10:11
Delphi - Текстовые файлы в Delphi Borislav Программирование и базы данных 2 11-01-2005 13:18




 
Переход