excel是电子表格,在我们日常应用中用途非常广泛,但是当我们拿到一个数据量非常大的表格,我们要将其中的数据按照自己的格式进行拆开和组合时,需要耗费的时间就很多,而且若有很多这种类似的表格出现时,我们对其一一进行分解会变的极为耗时,这时我们就需要对excel进行编程处理。
java有一个包jxl针对excel进行字体、数字、日期操作、修饰单元格属性、支持图像和图表。
这样通过编程,我们就可以用java对excel进行操作,从而可以大批量地生成excel文件,减少我们的工作量。
首先我们要导入jxl包,下载jxl包(附录中给出),将其放在你的Java\jdk1.7.0_25\jre\lib\ext目录下,同时在你所要用它的java项目中右键,选择Build Path-Add External Archives,选择你要导入的包jxl.jar。这样我们会在java project下看到多了一个文件夹名为Referenced Libraries,其下便有你导入的包。包导入成功后,我们就开始去查找API(附录中给出),知道它的运用方法。
我们今天便来介绍一下excel的简单读取和写入。
// 首先我们来学习excel的写入 // 首先创建一个可写入的excel文件 WritableWorkbook wwb = Workbook.createWorkbook(new File( "src/excel/test.xls")); // 创建一个工作表,名为test,在第一个位置 WritableSheet sheet = wwb.createSheet("test", 0); // 合并单元格,位置从0,0到6,0 sheet.mergeCells(0, 0, 6, 0); // 设置工作表中第0列的宽度(单位不详) sheet.setColumnView(0, 30); // 设置工作表中第0行的高度(单位不详) sheet.setRowView(0, 500); // 设置横向打印 sheet.setPageSetup(PageOrientation.LANDSCAPE, PaperSize.A4, 0.5d, 0.5d); // 设置缩放比例为90% sheet.getSettings().setScaleFactor(90); // 创建一个自定义字体格式,字体为宋体,字号为20,线条为加粗,有单下划线,红色字体 WritableFont wf = new WritableFont(WritableFont.createFont("宋体"), 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.RED); // 创建一个自定义单元格式,运用上述字体 WritableCellFormat wcf = new WritableCellFormat(wf); // 设置单元格式左右居中 wcf.setAlignment(Alignment.CENTRE); // 设置单元格式垂直居中 wcf.setVerticalAlignment(VerticalAlignment.CENTRE); // 设置单元格周围有边框 wcf.setBorder(Border.ALL, BorderLineStyle.THIN); // 创建一个文本标签,前两项为其坐标,第三项为其内容,最后为其单元格式 Label la = new Label(0, 0, "第一个例子", wcf); // 将这个标签添加到工作表中 sheet.addCell(la); // 下面我们来写入数字标签,首先我们自定义一个数字格式 // 我们这里保存的是两位小数点的数字格式,具体的可以进入excel,右键单元格-设置单元格格式-自定义中去查找 NumberFormat nf = new NumberFormat("#,##0.00"); // 和标签一样我们来创建一个自定义单元格式 WritableCellFormat nwcf = new WritableCellFormat(nf); // 设置单元格式 nwcf.setAlignment(Alignment.RIGHT); nwcf.setVerticalAlignment(VerticalAlignment.CENTRE); // 创建一个数字标签,注意这里调用Number类时必须要用全程 jxl.write.Number num = new jxl.write.Number(0, 1, 123, nwcf); // 将这个标签添加到工作表中 sheet.addCell(num); // 将excel文件写入 wwb.write(); // 关闭excel文件输入(不关闭无法形成xls文件!) wwb.close();
生成文件如图:
// 下面我们来学习excel的读取,相对与写入较为简单 // 首先创建一个文件对象 Workbook wb = Workbook.getWorkbook(new File("src/excel/test.xls")); // 创建工作表对象 Sheet sheet = wb.getSheet(0); // 读取第一个单元格的内容,并打印出来 System.out.println(sheet.getCell(0, 0).getContents()); // 我们也可以读取工作表数组 Sheet[] sheets = wb.getSheets(); // 打印每一个工作表的第一个单元格内容 for (Sheet sh : sheets) { System.out.println(sh.getCell(0, 0).getContents()); } // 关闭文件读入 wb.close();
相关推荐
1、POI_EXCEL包下分别有两个类,一个是读取excel内容,一个是想excel写入内容 2、cn.itcast包下的所有包,是为了实现从excel写入到数据库中,和从数据库写入到excel中 注意事项: 1、需要导入maven工程 2、使用...
Java读取Excel内容 v Java读取Excel内容 Java读取Excel内容
Java 读取 Excel 写入 Excel
java读取和写入EXCEL文件,在myeclipse平台上运行!!
java读取写入2007版excel所用的包
Java 读取写入Excel 方便好用 Java 读取写入Excel 方便好用
JAVA读取 excelJAVA读取 excel
java+poi+excel读取写入等操作所有jar(最新支持excel2013)Java实用源码整理learns
自测通过里面有jar报和代码 。
完美解决java读取excel内存溢出问题,希望可以帮到大家
POI处理excel文件,主要包括Excel的读取、写入,各种数据格式处理、单元格合并、注释、下拉列表及单元格的边框、背景色、宽度调整等。
JAVA使用POI对Excel读取
利用POI读取excel写入到word 利用POI读取excel写入到word 利用POI读取excel写入到word,压缩包里包含了jar包
java写入excel图片操作 包含需要的类库和相应的代码
由于项目需要对大量Excel数据进行输入输出处理,在使用JXL,POI后发现很容易出现OOM,最后在网上找到阿里的开源项目EasyExcel能很快速的读取写入超大Excel文件。经过大量的调试优化,现通过JAVA生成104万行20列的...
java向EXCEL中写入数据。里面有一个ExcelWrite.java的文件和一个jxl的jar包。
java对Excel进行读取、写入 Excel本身就可以作为一个数据库,作存储
利用java对excel进行操作,从一个excel读取数据,写入另一个excel。有详细注释,可根据自己需要修改。用到了jxl类库
医疗数据,用来java读取和写入excel用 医疗数据,用来java读取和写入excel用