Форум: "Основная";
Текущий архив: 2003.01.20;
Скачать: [xml.tar.bz2];
ВнизText Найти похожие ветки
← →
Студент (2003-01-08 01:23) [0]Почему при попытке сохранения значений таблицы в файл (StringGrid). В файл зщаписываются только значения только первых девяти строк?
procedure TForm1.Save;
var
n: word;
begin
Assignfile (F3, CSV3);
Rewrite(F3);
With StringGrid1 do begin
For n:= 1 to StringGrid1.RowCount - 1 do begin
Write(F3, Cells[1, n], ",", Cells[2, n], ",", Cells[3, n], ",");
Writeln(F3, IoResult);
end
end
end;
F3 - переменная типа text
← →
Pat (2003-01-08 02:04) [1]For n:= 0 to StringGrid1.RowCount - 1 do
Да и файл нужно бы закрыть
← →
Казалось (2003-01-08 04:07) [2]бы, (это я к Pat © (08.01.03 02:04))
ставить "n:= 0 " не хочет сам автор и это его право!
А все остальное, как известно, (by AP) - в 17-й строке!
← →
Студент (2003-01-08 04:13) [3]Закрыть надо, но речь идёт совсем не об этом.
И нулевую строку выводить ненадо, т.к. в ней названия столбцов таблицы.
Просто интересно почему запись обрывается.
← →
Для (2003-01-08 04:29) [4]Студентов!
В предъявленном Вами куске кода ошибок (явных) нет!
Но и сам код явно "ущербный".
Предъявите 17-ю строку сего кода, тогда Вам помогут (может быть).
← →
Anatoly Podgoretsky (2003-01-08 07:54) [5]Может у тебя только 9 строк, и переменная IOResult смущает.
В общем тебе поможет простая трассировка.
Кстати вместо запятой, разделителем лучше сделать табулятор.
← →
Pat (2003-01-08 09:09) [6]Мдя...по ночам спать надо...Перепутал StringGrid и TStringList...спать надо больше © не я :-)))
← →
Студент (2003-01-09 01:20) [7]IoResult, я засунул, чтоб посмотреть в чем дело. Проблему я решил давно. Мне просто интересно почему не пишет. По-моему он ограниченное число символов пишет. Иногда ячейку только наполовину записывает
Плюс там я уже это место исправил
procedure TForm1.SaveGoods;
var
n: word;
begin
Rewrite(F1);
With StringGrid1 do begin
For n:= 1 to StringGrid1.RowCount - 1 do begin
Append(F1);
Write(F1, Cells[1, n], ",", Cells[2, n], ",", Cells[3, n]);
Writeln(F1);
closefile(f1)
end
end
end;
procedure TForm1.SavePrices;
var
n: word;
begin
Rewrite(F2);
With StringGrid1 do begin
For n:= 1 to StringGrid1.RowCount - 1 do begin
Append(F2);
Write(F2, Cells[1, n], ",", Cells[4, n]);
Writeln(F2);
closefile(F2)
end
end
end;
Может чуть коряво. Зато работает.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.01.20;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c