掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
リストの保存と読み込み (ID:8785)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
文字列と日付だけ読み書きしたいんにゃら、record配列の方が管理が簡単にゃ〜 にゃんで ClassとTList使うんかにゃ〜 type TDataCss = packed record Text : string; Date : TDateTime; end; TAryDataCss = array of TDataCss; //書き込みにゃ〜 procedure TForm1.SaveButtonClick(Sender: TObject); var fs: TFileStream; i, Cnt, Len : Integer; AryDataCss : TAryDataCss; begin for i:=0 to 10 do begin SetLength(AryDataCss, Succ(i)); AryDataCss[i].Text := 'テストするにゃ〜'; AryDataCss[i].Date := Now + i; end; fs := TFileStream.Create('test.dat', fmCreate); Cnt := Length(AryDataCss); fs.Write(Cnt, SizeOf(Integer)); for i:=0 to Cnt-1 do begin Len := Length(AryDataCss[i].Text); fs.Write(Len, Sizeof(Integer)); fs.Write(AryDataCss[i].Text[1], Len); fs.Write(AryDataCss[i].Date, Sizeof(TDateTime)); end; fs.Free; end; //読み込みにゃ〜 procedure TForm1.LoadButtonClick(Sender: TObject); var fs : TFileStream; i, Cnt, Len : Integer; AryDataCss : TAryDataCss; begin fs := TFileStream.Create('test.dat', fmOpenRead); fs.Read(Cnt, SizeOf(Integer)); for i:=0 to Cnt-1 do begin SetLength(AryDataCss, Succ(i)); fs.Read(Len, SizeOf(Integer)); SetLength(AryDataCss[i].Text, Len); fs.Read(AryDataCss[i].Text[1], Len); fs.Read(AryDataCss[i].Date, Sizeof(TDateTime)); Memo1.Lines.Add(AryDataCss[i].Text); Memo1.Lines.Add(DateTimeToStr(AryDataCss[i].Date)); end; fs.Free; end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.