Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
4-1083483992
Coder
2004-05-02 11:46
2004.06.06
WM_CHAR


4-1082128654
WELLiON
2004-04-16 19:17
2004.06.06
меню в трее


3-1084831051
Valera
2004-05-18 01:57
2004.06.06
Права и роли FireBird


3-1084725937
Miwa
2004-05-16 20:45
2004.06.06
Подскажите, как в TDBGrid/TDBGridEh выделить несмежные записи


1-1085119168
IrBisoff
2004-05-21 09:59
2004.06.06
Правильная передача в Dll структуры данных.




   Наверх