ディスクから保存してロードする必要がある以下のような構造があります。
RSecStructure= packed record
Name : string[255]; {NEED UNICODE SUPPORT HERE}
ScreenName : string[255];
OrigFileName : string[255];
Prim : string[255];
ParentVersion : integer;
sTag1 : string[255];
sTag2 : string[255];
sTag3 : string[255];
sTag4 : string[255];
DateAdd : TDateTime;
DateModify : TDateTime;
end;
これまで、構造を保存するために次のようなものを使用してきました。
function
var F: FILE;
Hdr: RSecStructure;
begin
...
BlockWrite (F, Hdr, SizeOf(Hdr));
...
end
上記のコードは Delphi 7 で動作しました。D2009 では、短い文字列と Unicode 文字列の間で割り当てを行うと、多くの警告メッセージが表示されました。今まで、コンパイラの警告やヒントなしで Delphi コードを書くことができました。したがって、警告を受けずに文字列をディスクに保存するエレガントな方法が必要です (Unicode は優れていますが、重要ではありません)。