happyhippy

这个世界的问题在于聪明人充满疑惑,而傻子们坚信不疑。--罗素

(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 配置定义 

Code

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

 

2.3 导入结果

 

 

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

Code


 

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

4. 程序结构:

 

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

posted on 2008-10-29 00:03  Silent Void  阅读(1242)  评论(4编辑  收藏  举报