共享组件(有码):将文件中数据导入到DataTable

介绍一款支持TXT、CSV、XLS及XLSX格式的文件导入工具,具备自由配置文件格式、生成错误信息报告等功能,并提供使用示例与源代码下载。

(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)

happyhippy|other info| 1984 - 9 - 11 |
test|unuseful info|
9999 - 12 - 30 | 0

或(带表头信息的数据): 

雇员姓名|无用信息不用导入|生日|薪水
happyhippy|other info|
1984 - 9 - 11 |
test|unuseful info|
9999 - 12 - 30 | 0

 

2.2 配置定义 

ContractedBlock.gif Code

各个属性代表的意思:
FileType节点:CellSplit:列分隔符;HasHeader:文件内容中是否有表头(如果设成了true,则文件中的表头必须跟配置文件中的列的Description字段一致);
Column节点:PrimaryKey:指定生成的DataTable的主键(默认false);AllowNull:设定是否可空(默认true);Type:列中数据类型(无默认值,必须指定;String型须加长度限制);Used:列是否导进DataTable(默认true)

 

2.3 导入结果

  

 

2.4 调用示例代码(4种读取方式)

ContractedBlock.gif Code


 

3. 源代码下载:Happyhippy.ImpotFile.rar 

4. 程序结构:

 

5. 遗留问题:
5.1. CSV读取方式中,禁止将内容转换成数字;


本文转自Silent Void博客园博客,原文链接:http://www.cnblogs.com/happyhippy/archive/2008/10/29/1321758.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值