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

Вниз

сохранение структуры(записи)   Найти похожие ветки 

 
santey   (2006-09-02 18:40) [0]

Уважаемые господа у меня такой вопрос:
Есть запись
Tsett=record
 limtime:byte;
 limtim:integer;
 groupq:byte;
 hiWord:String;
 end;
я ее заполняю и пытаюсь сохранить при помощи
var
f:TfileStream;
begin
f:=TfileStream.Create(a,fmcreate);
f.Write(sett,sizeof(sett));
f.Free;

сохраняются поля лишь integer или byte, a поле string сохраняться не хочет
Подскажите как можно сохранить всю заполненую запись.
За ранее спасибо
С уважением Santey


 
Правильный Вася   (2006-09-02 18:42) [1]

1. packed record
2. sizeof(TSett)
3. hiWord:String[255];


 
имя   (2006-09-02 18:44) [2]

Удалено модератором


 
SergP ©   (2006-09-03 08:31) [3]

> сохраняются поля лишь integer или byte, a поле string сохраняться
> не хочет


Ну ясный пень что не приведенным тобой способом не будет сохраняться.

Либо [1], либо string сохраняй отдельно...


 
PSPF2003 ©   (2006-09-03 09:01) [4]

У меня все сохраняется.

Fil : TextFile;

procedure TForm1.dxBarButton4Click(Sender: TObject);
var
 Node : TTreeNode;

begin
 AssignFile(Fil, NameOfFile)  ;
 Rewrite(Fil);

Writeln(Fil, "<?xml version="1.0" encoding="windows-1251"?>");
Writeln(Fil, "");
Writeln(Fil, "<!-- Created by **** -->");
Writeln(Fil, "");
Writeln(Fil, "<MENU>");

Node := TreeView1.Items.GetFirstNode;
while Node <> nil do
 begin
  WriteCategoryProgramTree(Node);
  Node:=Node.getNextSibling;
 end;

Writeln(Fil, "</MENU>");

CloseFile(Fil);
end;

WriteCategoryProgramTree(Node: TTreeNode);
var
ChildNode : TTreeNode;
begin
if Node = nil then exit;
                 
  Writeln(Fil, "");
  Writeln(Fil, "<CATEGORY>");
  Writeln(Fil, "<CATEGORY_NAME>"+TDescription(Node.Data).Name+"</CATEGORY_NAME>");
  Writeln(Fil, "<CATEGORY_Login>"+TDescription(Node.Data).Login+"</CATEGORY_Login>");
  Writeln(Fil, "<CATEGORY_Password>"+TDescription(Node.Data).Password+"</CATEGORY_Password>");
  Writeln(Fil, "<CATEGORY_Link>"+TDescription(Node.Data).Link+"</CATEGORY_Link>");
  Writeln(Fil, "<CATEGORY_DESCR>"+TDescription(Node.Data).ShortDescrip.Text);
  Writeln(Fil, "</CATEGORY_DESCR>");

  ChildNode:=Node.getFirstChild;
  while ChildNode <> nil do
   begin
    WriteCategoryProgramTree(ChildNode);
    ChildNode:=ChildNode.getNextSibling;
   end;

  Writeln(Fil, "</CATEGORY>");

end;



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

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

Наверх




Память: 0.48 MB
Время: 0.049 c
1-1154439659
Евгений Владимирович
2006-08-01 17:40
2006.09.24
Как перевести DateTime в минуты?


15-1156787243
Некто
2006-08-28 21:47
2006.09.24
IP-адрес виндового роутера по умолчанию.


15-1157028147
Ega23
2006-08-31 16:42
2006.09.24
Это всё ваши армейские ветки виноваты!


1-1155199317
apl
2006-08-10 12:41
2006.09.24
Можно ли?


15-1157295084
vrem
2006-09-03 18:51
2006.09.24
Раскол