【发布时间】:2026-01-04 03:30:01
【问题描述】:
当我加载文件时,它会抛出“OutOfMemoryException”。如何有效地加载和搜索?
我正在使用
//to load the file.
var passEngine = new FileHelper<MyClass>.ReadFile().ToList()
var passList = passEngine.ReadFile("Files/plain_32m.tsv");
或者有其他方法吗?
【问题讨论】:
-
以流形式打开并在搜索流时搜索。
-
@ForeverZer0 我还需要将它们投射到“MyClass”中。
-
那很好,只是不要试图一起做。一次读取一个合理的数字,处理,并阅读更多,同时丢弃已经处理的内容。这就是流媒体的完成方式。你几乎永远不会打开一个大文件,即使是这么大的一小部分,也不会全部吃掉。
-
听起来像是数据库的一个很好的用例......你必须流式传输文件吗?如果您对 Sql Server 进行批量插入,它会很快,然后很容易可索引/可查询(以及具有持久性的好处)
-
也许您可以为此使用 OLE DB 连接?这将允许您对文件运行查询,就好像它是数据库一样。 *.com/questions/4063685/…
标签: c# .net csv filehelpers