Главная страница
    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-1132996973
Антон773
2005-11-26 12:22
2005.12.18
новости мира компонент


14-1132750791
ambr
2005-11-23 15:59
2005.12.18
Нужны исходники программы "Осциллограф из компа..."


3-1130749323
Tatyana
2005-10-31 12:02
2005.12.18
Запрос к двум базам


2-1133337728
Igor_
2005-11-30 11:02
2005.12.18
Предобъявление классов в Object Pascal


14-1132823910
ОноТебеНадо
2005-11-24 12:18
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский