关闭

集算器协助java合并批量文本到excel

标签: 批量txt合并exceljava集算器
259人阅读 评论(0) 收藏 举报
分类:

问题来源:http://bbs.csdn.net/topics/390842850 。

问题描述:把几千个txt文本里面的数据存取到Excel文件中去。txt文本中的数据都是很规范的,如下示例:
   文件夹 test   
   文件下文件名    a.txt,b.txt,c.txt等等  
   a.txt的内容是这样的  :
     数据A       数据B     数据C   

  需要将指定目录下的所有文本文件内容合并输出到一个Excel文件中,其中所有文本文件均由一行三列(以制表符分隔)的数据组成。

  JAVA在实现时需要循环读入该目录下所有文本,并将文本内容写到Excel文件中。但Java用于处理Excel的开源包(Apache的poi等)提供的支持过于底层,代码编写非常繁琐。

  集算器对poi进行了封装,实现起来非常简单:

 

A

1

=directory@p(“E:\\test”)

2

=A1.conj(file(~).import())

3

>file(“E:\\test\\result.xlsx”).exportxls(A2)

  A1:列出E:\\test目录下所有文件名,@p选项代表返回的文件名仍带有完整路径名

  A2:读取目录下所有文件后合并内容

  A3:将合并后的内容导出到xlsx格式Excel文件中(xlsx格式可以容纳100万行)。

  这段代码可以使用集算器提供的JDBC接口被java程序调用,在Java程序中使用esProc JDBC调用这段程序获得结果的代码如下:(将上述脚本保存为test.dfx):

    //建立esProc jdbc连接

    Class.forName(“com.esproc.jdbc.InternalDriver”);

    con= DriverManager.getConnection(“jdbc:esproc:local://”);

    //调用esProc程序(类似存储过程),其中test是dfx的文件名

    com.esproc.jdbc.InternalCStatement st =(com.esproc.jdbc.InternalCStatement)con.prepareCall(“call test()”);

    //执行esProc程序

    st.executeQuery();


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:181007次
    • 积分:3520
    • 等级:
    • 排名:第9365名
    • 原创:165篇
    • 转载:78篇
    • 译文:1篇
    • 评论:11条
    最新评论