我们有一个应用程序可以导出非常长的CSV文件,数千到数百万行。我们使用StringBuilder和许多.Appends来构造文件,这会耗尽大约500,000行的内存。 StringWriter基于StringBuilder,在我的测试中同时失败。
MemoryStream(或Tributary)在处理这么大的文件时应该没有任何问题,但它的API基于byte []。我知道I can convert,但这会让代码有点(很多?)更难以阅读。
是否有一个更简单的解决方案,用于将多个字符串写入我缺少的流,或者可能是实现此类功能的一种干净方式(也许是一个扩展名?)
答案 0 :(得分:0)
就这样有一些关闭:Mark的答案是我正在寻找的答案。通过使用StreamWriter构建流,它可以工作。 StringWriter失败。我仍然有一些编码问题,但相比之下这些问题很小。