哪个最适合用于从byte []创建文件?

时间:2012-07-20 09:04:47

标签: c# .net file

我想用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);

2 个答案:

答案 0 :(得分:9)

如果你有一个byte[],你可以使用WriteAllBytes并让包装方法担心其余的问题。当您(奇怪地)流式传输数据时,Stream方法很有用,这意味着:当您开始编写时,您可能不知道这一切。由于你拥有byte[],只需使用它即可。但是,在一般情况下,请注意基于byte[]的API可能比基于Stream的API对内存产生更大的影响,尤其是对于大型内容。

答案 1 :(得分:6)

你的所有字节都在内存中,所以也可以使用:

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

当您处理非常大的文件并且不想将所有内容保存在内存中时,流方法很有用。