2009-07-24 16 views
1

バイナリファイルをASCIIファイルに変換するアプリがあります。プロファイラを使用すると、BinaryWriter.Write(wchar [])から呼び出されるEncoding.GetBytes()を25%費やしていることが分かりました。スマートASCII文字列表現

m_writer.Write("some fancy long text".ToCharArray()); 

このエンコーディング変換を避ける方法はありますか?

私は今、1つのアイデアは、これに似た何かをすることであろうということ:

const byte[] SOME_FANCY_LONG_TEXT = Encoding.ASCII.GetBytes("some fancy ..."); 
// ... and later 
m_writer.Write(SOME_FANCY_LONG_TEXT); 

をしかし、私はそれを手動で行うには多くのそのようなエントリを持っています。

+1

あなたはASCIIファイルにバイナリファイルを変換」についてより具体的にしてもらえ"?正確にどのようなコンバージョンを適用しますか? – FWH

+0

バイナリファイルとASCIIファイルの違いは何ですか? (それはどういう意味ですか?) –

答えて

5

テキストファイルを作成する場合、なぜBinaryWriterを使用していますか?ちょうどTextWriterを使用してください。 BinaryWriterは、簡単な方法でプリミティブや文字列などを書きたいバイナリストリームを対象としています。

(すべてのテキストは間違いを経由して、ASCIIであることを行っていますか?あなたが代わりにUTF-8を使用して検討する必要があります。)

+0

問題はもはや意味がありません。 –