C# 如何将平面数据文件转换为可查询的数据源

C# 如何将平面数据文件转换为可查询的数据源,c#,windows,excel,datasource,C#,Windows,Excel,Datasource,我生成文件,让我们称之为.dwrf文件,其中包含大量数据。目前,我们将这些文件导出到.CSV,生成的文件很大(2GB+)。我想省去导出过程,直接从Excel或其他应用程序查询.dwrf文件的内容 我想做的是编写一个实用程序/服务(我们称之为dwrfMiner),从文件中提取数据并将其作为数据源传递,并以某种方式将dwrfMiner链接到.dwrf文件,以便Excel将其识别为外部数据源 有什么想法吗?Excel可以查询外部数据源,但要注意,Excel(所有版本)对每个工作簿可以显示的行数有严格限

我生成文件,让我们称之为.dwrf文件,其中包含大量数据。目前,我们将这些文件导出到.CSV,生成的文件很大(2GB+)。我想省去导出过程,直接从Excel或其他应用程序查询.dwrf文件的内容

我想做的是编写一个实用程序/服务(我们称之为dwrfMiner),从文件中提取数据并将其作为数据源传递,并以某种方式将dwrfMiner链接到.dwrf文件,以便Excel将其识别为外部数据源


有什么想法吗?

Excel可以查询外部数据源,但要注意,Excel(所有版本)对每个工作簿可以显示的行数有严格限制。我认为在Excel 2003中,限制为~65k。在其他版本中更高


请看我的问题:(而且我的数据量远小于>2GB)。

我过去常常查询平面文件

我会退出gcc,为它编写一个完整的ODBC驱动程序。然后,您可以坐下来使用SQL


你知道,如果你觉得无聊的话

将odbc驱动程序与多线程一起使用

编写odbc驱动程序时,如果您使用的文件格式事先已知,并且不太难翻译(听起来好像没有考虑到您已经在创建CSV),那么使用odbc DSN听起来是最好的选择

Windows中已经内置了许多ODBC驱动程序(.txt、.csv、.mdb、.xl*、.dbf、Paradox.db等),您可以从web上获得许多常用格式的其他驱动程序

如果要导出到的现有格式的大小过于繁重(CSV),那么逻辑起点是将数据转换为具有ODBC支持的更注重空间的格式


否则,最后一个选项是overkill选项(编写ODBC驱动程序)。

您想手动查询还是以编程方式查询,还是两者都要?两者都要。我想要一个Excel用户可以使用的界面(首先)和其他进程可以使用的界面。DWRF文件的格式是什么?文件中的数据结构如何?通常是平面的。一行/行是通过时间戳区别于其他行/行的不同数据段。某些行可能包含许多类似数据的集合/数组。Excel 2007行限制为1048576行:在早期版本中,限制为65536行。。。每份工作表(+1);为了更进一步,对于未来的软件设计,您(矮人)可能希望在定义输出格式之前考虑这些因素。