2014/10/28 (火) 15:25:23 Mr.XRAY |
TextFile (オブジェクト) でコードページを指定してテキストを保存する場合,
文字列の型だけてはなく,明示的に指定する必要があるようです.
例えば次のコードは,UTF-8 で保存します.
AssignFile にコードページが指定できるのは,Delphi XE2 以降のようです.
まっ,TextFile は使用しない方がいいと思いますが.
動作確認は,Windows 7 U64(SP1) + Delphi XE5 Pro です.
procedure TForm1.Button1Click(Sender: TObject);
var
StrText : string;
OutFile : TextFile;
begin
//ファイルはUTF-8とする
AssignFile(OutFile, 'TEST_1.TXT', CP_UTF8);
Rewrite(OutFile);
//UTF-8 BOMを追加
Write(OutFile, #$FEFF);
StrText := 'Hello world!';
//ファイルへ書込み
Writeln(OutFile, StrText);
CloseFile(OutFile);
end;
参考リンク
[System.AssignFile - RAD Studio API Documentation]
http://docwiki.embarcadero.com/Libraries/XE6/ja/System.AssignFile
|
|