11.10.2024, 22:47
|
Прохожий
|
|
Регистрация: 17.03.2021
Сообщения: 45
Версия Delphi: Delphi 7
Репутация: 10
|
|
Если надо только сделать кнопку загрузки из файла в таблицу, то для твоего формата подойдет
Код:
procedure TForm1.N2Click(Sender: TObject);
var
F:TextFile;
p:integer; //для запоминания столбца для вывода
str:string; //для копирования строки изи файла
col:integer; //для подсчета кол-ва строк
str1:string; //для заполнения таблицы
begin
col:=0;
if OpenDialog1.Execute Then
begin
assignFile(F, OpenDialog1.FileName);
Reset(F);
while not eof(f) do
begin
Readln(F, str);
if length(str)>3 then //для игнорирования пустых строк
begin
col:=col+1; //кол-во прочитанных строк
StringGrid1.rowcount:=col+1;
StringGrid1.Cells[0,col]:=IntToStr(col);// Нумерация столбцов
{} //разбивка по таблице
p:=1;
while pos(' ',str)>0 do //разбивка исходной строки для таблицы
begin
str1:=copy(str,1,pos(' ',str)-1);
delete(str,1,pos(' ',str)); //удаляем часть текста который вывели в таблицу
StringGrid1.Cells[p,col]:=str1;
p:=p+1;
end;
while pos(' ',str)>0 do delete(str,pos(' ',str),1); //удаление лишних пробелов, (в файле, в конце каждой строки стоит лишний пробел)
StringGrid1.Cells[p,col]:=str; //вывод остатка (иначе в конце каждой строки пришлось бы ставить знак разделителя)
{} //разбивка по таблице
end;
end;
CloseFile(F);
end;
end;
Есть готовый вариант с сохранением и загрузкой в прикрепленном файле.
|