![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Суть в следующеем имеется некий файл текстовый и понему строится дерево через TreeView.Loadfromfile();
С помощью этого дерева формируется структура катологов и файлов. и вот я построил эту структуру и хочу ей воспользоватся в каждой папке есть текстовый файл из которого нужно забрать информацию файл текстовый, но припопытке чтения выдает что фал не найден. Вот привожу код. Код:
procedure TForm2.Button2Click(Sender: TObject);
var
st:string;
i:integer;
t:textfile;
str:string;
cur:string;
begin
SetCurrentDir(MyDir);
st:=Edit1.Text;
for i:= 0 to (TreeView1.Items.Count - 1) do
begin
SetCurrentDir('database');
SetCurrentDir(TreeView1.Items[i].Text);
Cur:=TreeView1.Items[i].text;
Cur:=Cur+'.txt';
AssignFile(t,Cur);
Reset(t);
while not eof(t) do
while not eoln(t) do
begin
st:='';
Readln(t,str);
if pos(st,str) <> 0 then
begin
memo1.Lines.Add(TreeView1.Items[i].Text);
TreeNode:=TreeView1.Items[i];
while TreeNode.Parent <> nil do
begin
memo2.Lines.Add(TreeNode.Parent.Text);
TreeNode:=TreeNode.Parent;
end;
end;
end; |
|
#2
|
||||
|
||||
|
думаю, у тебя ошибка тут:
Код:
...
for i:= 0 to (TreeView1.Items.Count - 1) do
begin
SetCurrentDir('database'); //<--
SetCurrentDir(TreeView1.Items[i].Text); //<--
Cur:=TreeView1.Items[i].text;
Cur:=Cur+'.txt';
AssignFile(t,Cur); //<--
...Код:
//i=0
SetCurrentDir('database'); //cd="*/database/"
SetCurrentDir(TreeView1.Items[i].Text); //cd="*/database/папка1"
...
//i=1
SetCurrentDir('database'); //cd="*/database/папка1/database/"
SetCurrentDir(TreeView1.Items[i].Text); //cd="*/database/папка1/database/папка2"
...Код:
... ppath:=Extractfilepath(paramstr(0));//путь к программе for i:= 0 to (TreeView1.Items.Count - 1) do begin Cur:=TreeView1.Items[i].text; AssignFile(t, ppath+'database/'+Cur+'/'+Cur+'.txt');//используем полный путь ... |