日期:2014-05-18  浏览次数:20728 次

关于字符串的问题!!!急!!!
小弟在做C#过程中,需要处理大量的数据,然后将数据串起来保存在一个StringBuilder的对象中,但是当Stringbuilder对象的length到1000万左右的,就会抛出system.outofmemory的异常,文档上说最多可以达到两亿,为什么我的1000万就崩了?

------解决方案--------------------
估计是你的机器没有地方了吧,而且你为什么要这么干呢,那如果你要有10亿,也这么干?你最好分块处理吧
------解决方案--------------------
大内存块一次可以1G,应该可以到5亿字以上,如果是64位系统还能ToString,否则最多2.5亿左右,因为32位应用程序只能用到1G。如果能确定上限N,应该new StringBuilder(N)。
既然是保存文件就FileStream,什么问题都没有。
------解决方案--------------------
把所有的数据读完拼接在字符串 然后在写入xml LZ强大的想法啊,建议分部分写入