|
Вопрос # 992/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты! Можно ли сохранить данные из компонента StringGrid в файл
 |
Вопрос задал: Leonardo (статус: Посетитель)
Вопрос отправлен: 20 октября 2007, 22:49
Состояние вопроса: открыт, ответов: 2.
|
Ответ #1. Отвечает эксперт: Aleksey P. Kharitonov
Здравствуйте, Leonardo!
Сохранить данные из Grid'a можно, например, так:
Приложение: Переключить в обычный режим- procedure TForm1.Button1Click(Sender: TObject);
- var
- i: Integer;
- RowCount: Integer;
- begin
- for i:= 0 to RowCount-1 do
- StringGrid1.Rows[1].SaveToFile('C:\data_grid.txt');
- end;
 |
Ответ отправил: Aleksey P. Kharitonov (статус: 3-ий класс)
Время отправки: 21 октября 2007, 22:12
Оценка за ответ: 4
|
Ответ #2. Отвечает эксперт: Feniks
Здравствуйте, Leonardo!
Вот Вам небольшой примерчик для записи:
procedure SaveGrid;
var
f: textfile;
x, y: integer;
begin
assignfile(f, 'Filename');
rewrite(f);
writeln(f, stringgrid.colcount);
writeln(f, stringgrid.rowcount);
for X := 0 to stringgrid.colcount - 1 do
for y := 0 to stringgrid.rowcount - 1 do
writeln(F, stringgrid.cells[x, y]);
closefile(f);
end;
А это для чтения:
procedure LoadGrid;
var
f: textfile;
temp, x, y: integer;
tempstr: string;
begin
assignfile(f, 'Filename');
reset(f);
readln(f, temp);
stringgrid.colcount := temp;
readln(f, temp);
stringgrid.rowcount := temp;
for X := 0 to stringgrid.colcount - 1 do
for y := 0 to stringgrid.rowcount - 1 do
begin
readln(F, tempstr);
stringgrid.cells[x, y] := tempstr;
end;
closefile(f);
end;
 |
Ответ отправил: Feniks (статус: Бакалавр)
Время отправки: 22 октября 2007, 10:31
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 2; последнее сообщение — 21 октября 2007, 22:15; участников в обсуждении: 2.
|
Dron (статус: Студент), 20 октября 2007, 23:00 [#1]:
Готового метода у TStringList для сохранения в файл нет, но что мешает написать его самому? В чём трудность?
С уважением.
|
|
Aleksey P. Kharitonov (статус: 3-ий класс), 21 октября 2007, 22:15 [#2]:
К примеру:
Удалить из раздела объявление переменной: RowCount
В цикле использовать StringGrid1.RowCount
З.Ы. Поторопился нажать кнопочку "Отправить"
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|