(08-11-29日更新,增加了Xls和Xlsx文件导入支持)
1. 功能:
1.1. 自由配置文件格式:生成的DataTable的主键、文件内容中是否有表头、列分隔符、列是否可空、列中数据类型(String型可加长度限制)、列是否导进DataTable(过滤文件中的列,不读入DataTable);
1.2. 支持TXT、CSV、XLS、XLSX四种格式;
1.3. 生成错误信息报告:支持读到N条错误数据后,终止文件解析(N在config文件中配置);
1.4. 解析大文件时,支持行读;
1.5. 支持传入文件名或者Stream(例如Web上传后直接取得数据流)
2. 使用示例:
2.1 数据文件(数据保存成DemoDataFile.txt)
test|unuseful info| 9999 - 12 - 30 | 0
或(带表头信息的数据):
happyhippy|other info| 1984 - 9 - 11 |
test|unuseful info| 9999 - 12 - 30 | 0
2.2 配置定义
各个属性代表的意思:
FileType节点:CellSplit:列分隔符;HasHeader:文件内容中是否有表头(如果设成了true,则文件中的表头必须跟配置文件中的列的Description字段一致);
Column节点:PrimaryKey:指定生成的DataTable的主键(默认false);AllowNull:设定是否可空(默认true);Type:列中数据类型(无默认值,必须指定;String型须加长度限制);Used:列是否导进DataTable(默认true)
2.3 导入结果
2.4 调用示例代码(4种读取方式)
3. 源代码下载:Happyhippy.ImpotFile.rar
4. 程序结构:
5. 遗留问题:
5.1. CSV读取方式中,禁止将内容转换成数字;
本文转自Silent Void博客园博客,原文链接:http://www.cnblogs.com/happyhippy/archive/2008/10/29/1321758.html,如需转载请自行联系原作者