用Java实现excel转txt

摘要:
importjava.io。BufferedWriter;importjava.io。文件importjava.io。FileWriter;importjava.io。IOException;importjxl。单间牢房importjxl。床单importjxl。工作簿;导入jxl.read.biff。BiffException;公共类交换
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class exchange{
    public static void main(String[] args) {
        // 找到excel文件的路径
        String filepath = "e:\111.xls";
        try {
            Workbook workbook = Workbook.getWorkbook(new File(filepath));
            Sheet sheet = workbook.getSheet(0);
            //转成txt要保存的位置以及文件名
            File file = new File("e:/1.txt");
            FileWriter fw = new FileWriter(file);
            BufferedWriter bw = new BufferedWriter(fw);
            // j为行数,getCell("列号","行号")
            int j = sheet.getRows();
            int y = sheet.getColumns();
            for (int i = 0; i < j; i++) {
                for(int x=0; x<y; x++){
                    Cell c = sheet.getCell(x, i);
                    String s = c.getContents();
                //每一列用逗号隔开,并且第一列的最前边和最后一列的最后边不加逗号
                    if(x!=0 && StringUtils.isNotBlank(s))
                    bw.write(","+s);
                    else
                    bw.write(s);
                    bw.flush();
                }
                bw.newLine();
                bw.flush();
            }
            System.out.println("写入转换结束");
        } catch (BiffException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

注意1:Excel文件格式一定要是xls的不能是xlsx的;如果是xlsx后缀的,要另存为xls格式的才能将xls格式的进行转换

注意2:jxl.jar中封装的日期,对年份的读取默认是取后两位的,而月和日是原样输出。如果需要全部显示年份可以在String s = c.getContents();之后加个判断(找到Excel表中日期所在的列,假设日期在Excel表的第二列即x==1,则做如下判断)

if(x == 1){

s = "20"+s;

}

说明1:主要是用了文件操作的输入和输出,以及jxl.jar中封装的获取行和列还有读取日期并输出日期格式的方法

说明2:一般我们配置的jar包或者Maven仓库中是没有jxl.jar这个jar包的,但是转换需要用到所以我们需要自己去添加jar包

如何添加:在所属项目的maven的pom.xml中进行添加依赖,如下:

<dependency>

<groupId>net.sourceforge.jexcelapi</groupId>

<artifactId>jxl</artifactId>

<version>2.6.10</version>

</dependency>

添加完依赖之后则update或者install一下maven,maven会自动下载jxl.jar这个jar包的

maven仓库更新完成之后jar包就有了,就可以import了,jxl中封装的getCell(),getContents()等方法就可以使用了。

免责声明:文章转载自《用Java实现excel转txt》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇TSQL笔记1:SELECT及SELECT高级应用C# GridView 操作汇总下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度(转)

原文出处:http://zhouhaitao.iteye.com/blog/1842769 最近项目中需要用到导出Excel文件,以下是我写了一个通过jxl操作Excel的例子,熟悉Jxl的使用。 有一个比较难以处理的问题就是自动适应文本宽度的问题。 以下我也在网上找了一下 :有如下的方式处理: CellView cellView = new CellVi...

最简单的jxl导出Excel方法

jxl导出Excel的方法有很多,但是基本上不能够做到简便灵活,如,只写一个方法就可以实现所有需要导出的数据。除非使用方法反射机制,把对象所有的getxxx()方法遍历出来,取得它返回的值,但是得到的方法数组是无序的。代码如下: for(int j=0;j<list.size();j++){ Object ob...

Java:将数据库数据导出到Excel (一眼就看会)

所用Jar包 1. sqljdbc4.jar 连接数据库的Jar包(根据数据库的不同进行选择,我用的SqlServer2008) 2.Jxl.jar 访问Excel的Jar包 注意:支持以.xls结尾的Excel文件,可能不支持.xlsx结尾的 实现效果: 数据库数据: 导出的Excel: 完整代码: 导出的核心代码就四五行 类里需要import的包也...

【转载】JExcelApi(JXL)学习笔记

在公司的项目中,有excel生成、导出的需求,因此学习了用JXL读写excel,做个简单的笔记,以供参考。      实现用java操作excel的工具,一般用的有两个:一个是JXL,另一个是apache的POI。JXL的功能不如POI强大,但是对中文的支持性好,因此在中文项目中用JXL的比较多。 源代码介绍     JXL的源代码有11个包:    ...

java生成Excel(JXL类库)

jxl是java操作excel的工具, 在开源世界中,有两套比较有影响的API可 供使用,一个是POI,一个是jExcelAPI。其中功能相对POI比较弱一点。但jExcelAPI对中文支持非常好,API是纯Java的, 并不 依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。 另外需要说明的是,这套API对图形和图表的支...