java操作Excel xlsx、xls 兼容的处理

来源:互联网 发布:手机知乎怎么提问 编辑:程序博客网 时间:2024/04/27 16:01

最近在写一个关于java  POI操作excel的操作,整理了一下,希望能帮助到有需求的朋友。

主要是利用POI实现
前期需要准备的jar包有:
dom4j-1.6.1.jar
poi-3.9.jar
poi-ooxml-3.9.jar
poi-ooxml-schemas-3.9.jar
slf4j-api-1.6.1.jar
xmlbeans-2.3.0.jar

MODEL:

package util;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
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.xssf.usermodel.XSSFWorkbook;

public class XlsUtil {

public static void read(String filePath) throws IOException {
String fileType = filePath.substring(filePath.lastIndexOf(".") + 1, filePath.length());
InputStream stream = new FileInputStream(filePath);
Workbook wb = null;
if (fileType.equals("xls")) {
wb = new HSSFWorkbook(stream);
} else if (fileType.equals("xlsx")) {
wb = new XSSFWorkbook(stream);
} else {
System.out.println("您输入的excel格式不正确");
}
Sheet sheet1 = wb.getSheetAt(0);
for (Row row : sheet1) {
for (Cell cell : row) {
System.out.print(cell.getStringCellValue() + " ");
}
System.out.println();
}
}
public static boolean write(String outPath) throws Exception {
String fileType = outPath.substring(outPath.lastIndexOf(".") + 1, outPath.length());
System.out.println(fileType);
// 创建工作文档对象
Workbook wb = null;
if (fileType.equals("xls")) {
wb = new HSSFWorkbook();
} else if (fileType.equals("xlsx")) {
wb = new XSSFWorkbook();
} else {
System.out.println("您的文档格式不正确!");
return false;
}
// 创建sheet对象
Sheet sheet1 = (Sheet) wb.createSheet("sheet1");
// 循环写入行数据
for (int i = 0; i < 5; i++) {
Row row = (Row) sheet1.createRow(i);
// 循环写入列数据
for (int j = 0; j < 8; j++) {
Cell cell = row.createCell(j);
cell.setCellValue("测试" + j);
}
}
// 创建文件流
OutputStream stream = new FileOutputStream(outPath);
// 写入数据
wb.write(stream);
// 关闭文件流
stream.close();
return true;
}
public static void main(String[] args) {
try {
XlsUtil.write("C://Users//admin//Desktop//mxTest.xlsx");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
XlsUtil.write("C://Users//admin//Desktop//mxTest2.xls");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}


1 0
原创粉丝点击