7

byte[]を使用してファイルを作成したいのですが、どれが最適ですか。

byte[] content=File.ReadAllBytes(@"C:\ServiceLog.txt");

FileStream stream = new FileStream(@"C:\ServiceLog1.txt", FileMode.Create, FileAccess.ReadWrite);
stream.Write(content, 0, content.Length);
stream.Close();

また

 File.WriteAllBytes(@"C:\12.txt",content);
4

2 に答える 2

11

がある場合は、byte[]そのまま使用WriteAllBytesして、ラッパー メソッドに残りを心配させることもできます。このStreamアプローチは、(奇妙なことに)データをストリーミングしている場合に役立ちます。つまり、書き始めたときにすべてを把握していない可能性があります。あなたを持っているのでbyte[]、それは私たちだけです。ただし、一般的なケースでは、 特に大規模なコンテンツの場合、 にbyte[]基づく API は に基づく API よりもメモリに大きな影響を与える可能性があることに注意してください。Stream

于 2012-07-20T09:06:31.450 に答える
9

すべてのバイトはすでにメモリ内にあるため、次を使用してください。

File.WriteAllBytes(@"C:\12.txt",content);

ストリーム メソッドは、非常に大きなファイルを処理していて、すべてをメモリに保持したくない場合に便利です。

于 2012-07-20T09:06:40.807 に答える