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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.469 c
4-1083050607
luka
2004-04-27 11:23
2004.06.06
клавиатура и мышь


1-1085619587
nitro
2004-05-27 04:59
2004.06.06
Считываю инфу из файла в Richedit. После загрузки "каретка"...


3-1084528066
Korefey
2004-05-14 13:47
2004.06.06
sql, объединение полей


1-1085312508
AndrewVolkov
2004-05-23 15:41
2004.06.06
BreakPoint в стандартных модулях???


1-1085560268
Фагот
2004-05-26 12:31
2004.06.06
Excel XP и D6





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