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方法很有用,这意味着:当您开始编写时,您可能并不知道所有内容。既然你,就我们吧。但是,在一般情况下,请注意基于 - 的 API 对内存的影响可能比基于 - 的 API 更大,尤其是对于大型内容。byte[]byte[]Stream

于 2012-07-20T09:06:31.450 回答
9

您所有的字节都已经在内存中,因此也可以使用:

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

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

于 2012-07-20T09:06:40.807 回答