Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Нужен совет. Сохранение данных в типизированный файл.   Найти похожие ветки 

 
VitGun   (2004-05-26 18:58) [0]

В моей программе есть структура такого вида


type TProject=record
  id:string[3];
  Name:string[25];
  Date:TDate;
  Data:TStringGrid;
end;

Как лучше/удобнее всего производите чтение/запись в файл? Нужно чтобы сохраненые данные нельзя
было просмотреть обычным Notpad"ом...


 
afn ©   (2004-05-26 19:16) [1]

Может просто указазтель на структуру объявить, заполнить и далее:
...
BlockWrite(f,pntr^,SizeOf(TProject));
...
где pntr - указатель на TProject


 
Anatoly Podgoretsky ©   (2004-05-26 20:37) [2]

Вот до сюда   Data:TStringGrid; все было хорошо, а вот здесь абсурд, TStringGrid это указатель, действительный в данном сеансе работы и его не имеет смысла сохранять.
Решени в отказе от типизированного файла в пользу текстового, тогда действительно и блокнотом можно будет пользоваться.
Советую посмотреть здесь статьи по работе с файлами http://www.delphikingdom.com/lyceum/seminar.asp?partID=4


 
YurikGl ©   (2004-05-26 20:40) [3]

var
st:TFileStream;
Nastroyki:TProject;
begin
st:=TFileStream.Create(ProgDir+"\установки.set",fmOpenWrite);
st.Write(Nastroyki,sizeof(Nastroyki));
st.free;

end;

Не сохранятся TStringGrid и String т.к. являются указателями.


 
AlexG ©   (2004-05-26 21:09) [4]


> Нужно чтобы сохраненые данные нельзя
> было просмотреть обычным Notpad"ом...

Единственный выход - шифрование (какое-нибудь не сложное будет достаточным). Ибо код символа - всегда виден как символ. Для шифрования, например, можно такой алгоритм использовать:
var
 Ch: char;
 CodedCh: word;
...
 CodedCh := ord(Ch)-60;
...
Ну а обратно сам знаешь.


 
afn ©   (2004-05-27 03:25) [5]

> Anatoly Podgoretsky ©  

Да, сорри просто не подумал. Я так делал, но у меня структура без указателей.



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

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
14-1085249231
Lm
2004-05-22 22:07
2004.06.06
shell+XP


1-1085127834
Alex
2004-05-21 12:23
2004.06.06
могу ли я использовать массив в Delphi с динамическими границами


6-1082103346
MU
2004-04-16 12:15
2004.06.06
Справочник банков (филиалов) с их реквизитами


14-1085133085
Dmitriy O.
2004-05-21 13:51
2004.06.06
Вопрос по IB


4-1083725758
Matveyev
2004-05-05 06:55
2004.06.06
Пункт меню с иконкой