JAVA-Excel文件操作
2016-05-09 09:41
507 查看
使用环境:JAVA 1.8
一、安装
1.下载Poi包
Apache POI
当前最新稳定版本为3.14。下载poi-bin-3.14.zip即可。
2.将下载下来的压缩包解压,将其中的所有jar文件,都复制到JRE路径中。
我的路径是D:\Program Files\Java\jdk1.8.0_40\jre\lib\ext
3.新建NetBeans程序,便可使用。
二、使用
具体使用可以参考压缩包中的doc文件夹里面的帮助文档。
这里简单列举一下应用:
一、安装
1.下载Poi包
Apache POI
当前最新稳定版本为3.14。下载poi-bin-3.14.zip即可。
2.将下载下来的压缩包解压,将其中的所有jar文件,都复制到JRE路径中。
我的路径是D:\Program Files\Java\jdk1.8.0_40\jre\lib\ext
3.新建NetBeans程序,便可使用。
二、使用
具体使用可以参考压缩包中的doc文件夹里面的帮助文档。
这里简单列举一下应用:
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.HashMap; import java.util.Map; import javax.swing.JOptionPane; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ExcelLog { public ExcelLog(int index) { createNewBook(); } //新建工作表 private void createNewBook() { try { String path = "D:\\test.xlsx"; File f = new File(path); File dir = f.getParentFile(); if (!dir.exists()) {//如果文件路径不存在,则创建路径 dir.mkdirs(); } if (!f.exists()) {//如果文件不存在,则新建文件 Workbook wb = new XSSFWorkbook(); //.xlsx Sheet sheet = wb.createSheet("Test Log"); //新建Sheet Row row = sheet.createRow(0); //写一行数据 String[] header = {"COL1", "COL2", "COL3", "COL4", "COL5"}; for (int i = 0; i < header.length; i++) { row.createCell(i).setCellValue(header[i]); } //写入文件 try (FileOutputStream fileOut = new FileOutputStream(path)) { wb.write(fileOut); wb.close(); } } } catch (IOException ex) { JOptionPane.showMessageDialog(null, "无法写入Excel文件:" + ex.getMessage()); System.exit(-1); } } //Sheet表的行数 private int getRowCount() { try (FileInputStream fileInput = new FileInputStream(path)) { Workbook wb = WorkbookFactory.create(fileInput); Sheet sheet = wb.getSheetAt(0); return sheet.getPhysicalNumberOfRows(); } catch (IOException | InvalidFormatException | EncryptedDocumentException ex) { JOptionPane.showMessageDialog(null, "无法读取Excel文件:" + ex.getMessage()); System.exit(-1); return 0; } } //写一行数据 private void writeLine(String[] items) { try{ Workbook wb = WorkbookFactory.create(new FileInputStream(path)); Sheet sheet = wb.getSheetAt(0); int rowIndex = this.getRowCount(); Row row = sheet.createRow(rowIndex); for (int i = 0; i < items.length; i++) { row.createCell(i).setCellValue(items[i]); } //写入文件 try(FileOutputStream fileOut = new FileOutputStream(path);){ wb.write(fileOut); } wb.close(); } catch (IOException | InvalidFormatException | EncryptedDocumentException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(null, "无法写入Excel文件:" + ex.getMessage()); System.exit(-1); } } }
相关文章推荐
- java S2SH项目框架整合搭建实例教程
- eclipse使用小技巧
- 【第三章】 DI 之 3.2 循环依赖 ——跟我学spring3
- java 集合框架 Set Map List
- java多线程的创建方式
- Java类加载机制与反射 jvm学习
- Java Web之请求和响应
- JDK源码分析:hashCode()方法
- 如何用Java编写一段代码引发内存泄露
- 常见问题-spring通过反射调用service
- 如何诊断 Java 中的内存泄露
- myeclipse javaWeb项目+JAX-WS webService接口开发
- 这应该是迄今为止最全的一份Java就业指导书
- Eclipse工作视图的背景色更改
- Java Web项目如何提高访问效率
- [置顶] struts2实现文件的下载
- 【SSH网上商城项目实战07】Struts2和Json的整合
- java的static final 和final static区别
- 举例讲解Java的RTTI运行时类型识别机制
- SpringMVC Controller介绍