Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

У кого есть ф-я сохранения-чтения StringGrid в txt файл   Найти похожие ветки 

 
Layner   (2003-10-27 15:06) [0]

поделитесь, плз.!


 
Layner   (2003-10-27 15:08) [1]

Тьфу, сам задал, сам и отвечаю, в Кулибе1000 нашел.
Кому надо вот:

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;


 
Palladin   (2003-10-27 15:20) [2]

нда... шедеврь...


 
Layner   (2003-10-27 15:22) [3]

Palladin © (27.10.03 15:20)
Можешь упростить?


 
Amoeba   (2003-10-27 15:38) [4]

Используй swStringGrid, он это умеет делать сам.
http://www.torry.net/vcl/grids/stringgrids/swstringgrid.zip


 
Palladin   (2003-10-27 17:50) [5]

procedure SaveStringGrid(p_sg:TStringGrid;const p_strFileName:string);
var
i:integer;
s:string;
begin
with TFileStream.Create(p_strFileName,fmCreate) do
try
for i:=0 to p_sg.RowCount-1 do
begin
s:=p_sg.Rows[i].CommaText+#13#10;
Write(s[1],Length(s));
end;
finally
Free;
end;
end;

procedure LoadStringGrid(p_sg:TStringGrid;const p_strFileName:string);
var
fs:TFileStream;
i:integer;
begin
fs:=TFileStream.Create(p_strFileName,fmOpenRead);
with TStringList.Create do
try
LoadFromStream(fs);
p_sg.RowCount:=Count;
for i:=0 to Count-1 do p_sg.Rows[i].CommaText:=Strings[i];
finally
free;
fs.Free;
end;
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.031 c
1-41204
Agent[007]
2003-11-01 22:07
2003.11.13
Case ... of <a>:<b>; end;


1-41168
АлексейКотляр
2003-11-03 18:50
2003.11.13
Как програмно нажать кнопку мыши?


3-40963
snake1977
2003-10-17 10:09
2003.11.13
генераторы


14-42099
Yttrium
2003-10-23 01:00
2003.11.13
FreePascal, борьба с компилятором под Linux


14-41959
Skier
2003-10-20 10:59
2003.11.13
Формула-1 в России ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский