2012-09-12 8 views
7

私はバイト[]の形式のテキストファイルを持っています。byte []ファイルからすべてのテキストを読み取る方法は?

どこにでもファイルを保存できません。

この 'ファイル'からすべての行/テキストを読みたいと思います。

C#のバイト[]からすべてのテキストをどのように読むことができるか、誰かが正しい方向に向いていますか?

ありがとうございます!

+1

これまでに何を試しましたか? – VIRA

+1

バイト[]を試しましたか?fileC = File.ReadAllBytes(dialog.FileName); –

+0

@Todd Moses私はすでにファイルをバイト[]として持っています。私はそのバイト[]からテキストを読み込もうとしています。それは私に与えられている、私は実際にディスクに保存されたファイルを持っていない、私はそれをディスクに保存し、次に読み込む必要はありません。 – Kyle

答えて

19

私はMemoryStreamを作成し、それにStreamReaderをインスタンス化、すなわちでしょう:

var stream = new StreamReader(new MemoryStream(byteArray)); 

その後に一度テキストに行を取得する:

stream.readLine(); 

または使用して完全なファイル:

+0

これは動作します、ありがとう! – Kyle

+1

問題なし、私は[スーパー重要](http://codegolf.stackexchange.com/questions/88/obfuscated-fizzbuzz-golf)の理由で一度それを理解しなければならなかった。 –

0

Encodingを使用する別の解決策:

Encoding.Default.GetString(byteArray); 

必要に応じて行を取得するために分割することができます。

Encoding.Default.GetString(byteArray).Split('\n'); 

また、代わりにDefaultを使用してのUTF-8のような特定のエンコードを選択することができます。

関連する問題