|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Запись в StringGrid из текстового файла
Здравствуйте! Обращаюсь к Вам за помощью! Я новичок в Delphi, никак не получается загрузить данные из текстового файла в таблицу! Вроде бы должно быть элементарно, но никак не получается. Кое что я конечно сделал, а вот дальше не продвинуться. Высылаю сам текстовый файл и код. Если не трудно, помогите!
|
#2
|
|||
|
|||
Лень лезть в архив. Выложи сюда структуру файла данных.
|
#3
|
|||
|
|||
Если надо только сделать кнопку загрузки из файла в таблицу, то для твоего формата подойдет
Код:
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; Есть готовый вариант с сохранением и загрузкой в прикрепленном файле. |