java POI操作Excel的一些操作整理

Excel操作

1.下载引用poi-3.5.jar
2.典型查询示例

try
{
    HSSFWorkbook workbook=new HSSFWorkbook(new FileInputStream(path));
    int sheet_count=workbook.getNumberOfSheets();
    for(int i=0;i<sheet_count;i++){
        HSSFSheet sheet=workbook.getSheetAt(i);
        int rowNum=sheet.getLastRowNum();

    }
}
catch (FileNotFoundException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}
catch (IOException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}

3.典型写入示例

HSSFWorkbook wb = new HSSFWorkbook();// 建立新HSSFWorkbook对象
HSSFSheet sheet = wb.createSheet("new sheet");// 建立新的sheet对象
// Create a row and put some cells in it. Rows are 0 based.
HSSFRow row = sheet.createRow((short) 0);// 建立新行
// Create a cell and put a value in it.
HSSFCell cell = row.createCell((short) 0);// 建立新cell
cell.setCellValue(1);// 设置cell的整数类型的值
// Or do it on one line.
row.createCell((short) 1).setCellValue(1.2);// 设置cell浮点类型的值
row.createCell((short) 2).setCellValue("test");// 设置cell字符类型的值
row.createCell((short) 3).setCellValue(true);// 设置cell布尔类型的值
HSSFCellStyle cellStyle = wb.createCellStyle();// 建立新的cell样式
cellStyle.setDataFormat(HSSFDataFormat.getFormat("m/d/yy h:mm"));// 设置cell样式为定制的日期格式
HSSFCell dCell = row.createCell((short) 4);
dCell.setCellValue(new Date());// 设置cell为日期类型的值
dCell.setCellStyle(cellStyle); // 设置该cell日期的显示格式
HSSFCell csCell = row.createCell((short) 5);
csCell.setEncoding(HSSFCell.ENCODING_UTF_16);// 设置cell编码解决中文高位字节截断

row.createCell((short) 6).setCellType(HSSFCell.CELL_TYPE_ERROR);// 建立错误cell
// Write the output to a file
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
wb.write(fileOut);
fileOut.close();

如果报这个错误:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

在Debug Properties设置:
-Xms800m -Xmx800m
java POI操作Excel的一些操作整理_第1张图片
单元格样式判断

                    if(sheet.getRow(row).getCell((short)1).getCellType()==0) //numberic
                        part_number=(sheet.getRow(row).getCell((short)1).getNumericCellValue())+"";
                    else
                        part_number=sheet.getRow(row).getCell((short)1).getStringCellValue();

你可能感兴趣的:(java POI操作Excel的一些操作整理)