java excel构造以及解析

来源:互联网 发布:嵌入式linux桌面系统 编辑:程序博客网 时间:2024/06/08 05:26

最保守的方法是用poi方法构建完,把hssf类换成xssf,兼容xls,以及xlsx文件

构建

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
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.xssf.usermodel.XSSFWorkbook;

public class POIBUILDXLS {

public static void main(String[] args) throws IOException {
String[] title={"id","name","sex"};
XSSFWorkbook workbook=new XSSFWorkbook();
Sheet sheet=workbook.createSheet();
Row row=sheet.createRow(0);
Cell cell=null;
for(int i=0;i<title.length;i++){
cell=row.createCell(i);
cell.setCellValue(title[i]);
}
for(int i=1;i<10;i++){
Row neRow=sheet.createRow(i);
Cell cell2=neRow.createCell(0);
cell2.setCellValue("a"+i);
cell2=neRow.createCell(1);
cell2.setCellValue("user"+i);
cell2=neRow.createCell(2);
cell2.setCellValue("男");
}
File file=new File("d:/poi_test.xlsx");
file.createNewFile();
FileOutputStream stream=FileUtils.openOutputStream(file);
workbook.write(stream);
stream.close();
}
}

解析

import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class POIGETXLS {
public static void main(String[] args) {
File file=new File("d:/poi_test.xlsx");
try{
XSSFWorkbook workbook=new XSSFWorkbook(FileUtils.openInputStream(file));
XSSFSheet sheet=workbook.getSheetAt(0);
int firstRowNum=0;
int lastRowNum=sheet.getLastRowNum();
for(int i=firstRowNum;i<=lastRowNum;i++){
XSSFRow row=sheet.getRow(i);
int lastCellNum=row.getLastCellNum();
for(int j=0;j<lastCellNum;j++){
XSSFCell cell=row.getCell(j);
String value=cell.getStringCellValue();
System.out.print(value+" ");
}
}
}catch(IOException e){
e.printStackTrace();
}
}
}

原创粉丝点击