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

Вниз

Сохранение в файл StringGrid методом SaveToFile   Найти похожие ветки 

 
Пётр   (2005-11-18 09:17) [0]

Подскажите пожайлуста как можно сохранить в файл
полностью всю таблицу StringGrid методом SaveToFile ?
(У меня получается сохранение только одного ряда или одного столбца)


 
ЮЮ ©   (2005-11-18 09:25) [1]

А разве у TStringGrid есть SaveToFile?
Если же использовать TStrings.SaveToFile, то именно один ряд (одна колонка) и является TStrings.


 
Anatoly Podgoretsky ©   (2005-11-18 09:31) [2]

Пётр   (18.11.05 09:17)  
Такого метода не существует.


 
SergGG   (2005-11-18 09:46) [3]

Даю код с сохранением в текстовой файл:



TStrGrdSaveRead = class(TStringGrid)

Procedure TStrGrdSaveRead.SaveGridToFile(FileName: String);
var f:textfile;
x,y:integer;
Sx,Sy:String;
begin
 assignfile (f,Filename);
 rewrite (f);
 writeln (f,"[ ",colcount," x ",rowcount," ]");
 writeln (f,"[ ",DefaultColWidth," , ",DefaultRowHeight," ]");
 For X:=0 to rowcount-1 do
 begin
   Sx:="|";
   For y:=0 to colcount-1 do
   begin
     Sy:=cells[y,x]+"|";
     Sx:=Sx+Sy;
   end;
   writeln (F, Sx);
 end;
 closefile (f);
end;

Procedure TStrGrdSaveRead.LoadGridFromFile(FileName:String);
var f:textfile;
temp1,temp2,x,y:integer;
tempstr,Sx:string;
s:string[2];
begin
 assignfile (f,Filename);
 reset (f);
 readln (f,s,temp1,s,temp2,s);
 colcount:=temp1;
 rowcount:=temp2;
 readln (f,s,temp1,s,temp2,s);
 DefaultColWidth:=temp1;
 DefaultRowHeight:=temp2;
 For X:=0 to rowcount-1 do
 begin
   readln (F, tempstr);
   For y:=0 to colcount-1 do
   begin
     Delete(tempstr,1,pos("|",tempstr));
     Sx:=copy(tempstr,0,pos("|",tempstr)-1);
     cells[y,x]:=Sx;
   end;
 end;
 closefile (f);
end;


 
Пётр   (2005-11-18 18:58) [4]

Всем откликнувшимся большое спасибо.


 
vertal ©   (2005-11-19 18:47) [5]

> SergGG   (18.11.05 09:46) [3]
Только еще наверное желательно символ разделителя колонок, если таковой встретиться в какой-нибудь строке, записывать в виде Escape-последовательности, например как \|, а то будут проблемы с чтением сохраненной таким образом таблицы



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

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

Наверх





Память: 0.45 MB
Время: 0.013 c
14-1132562930
Igorek
2005-11-21 11:48
2005.12.18
Фильмы на тему ИИ


2-1133345383
Ильичев С.А.
2005-11-30 13:09
2005.12.18
ActionManager


2-1133183927
kblc
2005-11-28 16:18
2005.12.18
TComboBox


14-1132752475
Хинт
2005-11-23 16:27
2005.12.18
Баннеры на сайт


14-1132921459
Pazitron_Brain
2005-11-25 15:24
2005.12.18
А можно так сделать?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский