0

BOMなしでファイルを書き込もうとしていますRadStudio XE3

TStreamWriter目的のためにヘルパークラスを使用しています。問題は、EverytimeBOMが先頭に書かれていることfileです。これは避けたい。私はすでに変更しようとしましたがTEncoding、ほとんどすべてのオプションを試しましたが成功しませんでした。Embarcadero のドキュメントによると、UTF7エンコードBOMを使用してファイルを書き込むと、ファイルに書き込まれません (これも成功しません)。

私は間違っていますか、これはコンパイラの問題ですか?

4

1 に答える 1

0

TEncodingwith を使用しTStreamWriterて BOM を定義する場合は、TStreamWriterそれを書き込みます。そのロジックを無効にするオプションはありません。

TEncodingBOM を回避する 1 つの方法は、仮想GetPreamble()メソッドをオーバーライドして空のバイト配列を返し、他のメソッドをオーバーライドして作業を別の に委任する新しいクラスを派生させることTEncodingです。

于 2013-05-31T06:06:40.880 に答える