C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Глюк при поиске сохраненного файла
Guest
  Отправлено: 30.05.2005, 20:36


Не зарегистрирован







Имеется проблема следующего характера. После того как я сохранил файл
CODE

TStringList *L=new TStringList;
L->SaveToFile(ExtractFilePath(Application->ExeName) +"Nets\"+Edit1->Text+".txt");
Delete L;

И пытаюсь его найти
CODE

TSearchRec sr;
ListView2->Clear();
AnsiString Path=ExtractFilePath(Application->ExeName) + " Nets \";
SetCurrentDir(Path);
if (FindFirst("*.txt", faAnyFile, sr) == 0)
{
     
 ListView2->Items->Add();
        ListView2->Items->Item[ListView2->Items->Count-1]->Caption=ExtractFileName(ChangeFileExt(Path+sr.Name,""));

 while (FindNext(sr) == 0)
        {
        ListView2->Items->Add();
         ListView2->Items->Item[ListView2->Items->Count-1]->Caption=ExtractFileName(ChangeFileExt(Path+sr.Name,""));
        }
 }
FindClose(sr);

программа его не находит, но стоит только выключить ее и снова включить и произвести поиск то все ОК. Как от этого избавиться
Guest
Отправлено: 30.05.2005, 21:42


Не зарегистрирован







У меня ваш код работает корректо.
Только надо чтобы путь существовал (папка Nets)
и вместо одной кавычки надо две,
то есть
CODE

ExtractFilePath(Application->ExeName) + " Nets \\";


Также мне не понравилось что вы постоянно переключаете
CurrentDir функцией SetCurrentDir(Path);
я бы это переписал по другому:

CODE

if (FindFirst(Path+"*.txt", faAnyFile, sr) == 0)


А так работает нормально, поиск выполняет.

Вернуться в Вопросы программирования в C++Builder