2013-05-29 27 views
0

我試圖在RadStudio XE3中寫入沒有BOM的文件。C++:RadStudio中沒有BOM的文件

我使用TStreamWriter輔助類爲此目的。問題是每當BOMfile開始時都被記錄下來。我想避免這種情況。我試過已經改變TEncoding,我嘗試了幾乎所有的選擇沒有成功。 Embarcadero文檔說,如果我編寫的文件UTF7編碼BOM將不會wr wr文件(再次沒有成功)。

我是錯的還是這是一個編譯器問題?

回答

0

如果TEncodingTStreamWriter一起使用定義了一個BOM,TStreamWriter會寫它。沒有選項可禁用該邏輯。避免BOM

的一種方法是從TEncoding重寫虛擬GetPreamble()方法來返回一個空字節數組,並覆蓋其他的方法來工作委託給另一TEncoding派生一個新類。