Java用poi读取excel
2012-08-18 00:00
344 查看
寻梦的男孩http://www.xupei.tk/?post=11
主要对象:
通过usermodel读取文件
首先创建一个InputStream,然后创建一个HSSFWorkbook:
有了
HSSFWorkbook
实例,接下来就可以提取工作表、工作表的行和列,例如:
上面这段代码提取出第一个工作表第三行第四单元格。利用单元格对象可以获得它的值,提取单元格的值时请注意它的类型:
实例:
寻梦的男孩http://www.xupei.tk/?post=11
主要对象:
HSSFWorkbook | excel的文档对象 |
HSSFSheet | excel的表单Sheet |
HSSFRow | excel的行 |
HSSFCell | excel的单元格 |
HSSFFont | excel字体 |
HSSFDataFormat | 日期格式 |
HSSFHeader | sheet头 |
HSSFFooter | sheet尾(只有打印的时候才能看到效果)和这个样式 |
HSSFCellStyle | cell样式 |
HSSFDateUtil | 日期 |
HSSFPrintSetup | 打印 |
HSSFErrorConstants | 错误信息表 |
首先创建一个InputStream,然后创建一个HSSFWorkbook:
InputStream myxls = new FileInputStream("workbook.xls")); HSSFWorkbook wb = new HSSFWorkbook(myxls);
有了
HSSFWorkbook
实例,接下来就可以提取工作表、工作表的行和列,例如:
HSSFSheet sheet = wb.getSheetAt(0); // 第一个工作表 HSSFRow row = sheet.getRow(2); // 第三行 HSSFCell cell = row.getCell((short)3); // 第四个单元格
上面这段代码提取出第一个工作表第三行第四单元格。利用单元格对象可以获得它的值,提取单元格的值时请注意它的类型:
if (cell.getCellType() == HSSFCell.CELL_TYPE_STRING) { ("单元格是字符串,值是: " + cell.getStringCellValue()); } else if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) { ("单元格是数字,值是: " + cell.getCellValue()); } else () { ("单元格的值不是字符串或数值。"); }
实例:
import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Iterator; 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.poifs.filesystem.POIFSFileSystem; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; public class main { public static void main(String[] args){ try { InputStream input = new FileInputStream("D:\\接口.xls"); POIFSFileSystem fs = new POIFSFileSystem(input); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheetAt(0); // Iterate over each row in the sheet Iterator<Row> rows = sheet.rowIterator(); while (rows.hasNext()) { HSSFRow row = (HSSFRow) rows.next(); System.out.println("Row #" + row.getRowNum()); // Iterate over each cell in the row and print out the cell"s // content Iterator<Cell> cells = row.cellIterator(); while (cells.hasNext()) { HSSFCell cell = (HSSFCell) cells.next(); System.out.println("Cell #" + cell.getCellNum()); switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_NUMERIC: System.out.println(cell.getNumericCellValue()); break; case HSSFCell.CELL_TYPE_STRING: System.out.println(cell.getStringCellValue()); break; case HSSFCell.CELL_TYPE_BOOLEAN: System.out.println(cell.getBooleanCellValue()); break; case HSSFCell.CELL_TYPE_FORMULA: System.out.println(cell.getCellFormula()); break; default: System.out.println("unsuported sell type"); break; } } } } catch (IOException ex) { ex.printStackTrace(); } } }
寻梦的男孩http://www.xupei.tk/?post=11
相关文章推荐
- java 用poi框架读取excel 2010
- Java使用poi读取excel数据(excel可能很大,先转换为csv再读取)
- Java POI读取Excel 2003/2007/2010例子
- POI实战-java开发excel详解之单元格各类型数据读取
- Java的poi技术读取Excel[2003-2007,2010]
- java poi读取excel日期格式数据
- Java的poi技术读取和导入Excel
- Java POI读取/导出Excel数据
- java操作excel之poi读取excel
- Java读取大数据量Excel的方法(POI)
- Java的poi技术读取和导入Excel
- 使用java读取Excel——poi
- java利用poi读取excel中数据
- java的poi技术读取Excel数据到Mysql
- java的poi技术读取和写入excel
- java 操作 Excel (读取Excel2003 2007,Poi实现)
- Java POI 读取Office excel (2003,2007)及相关jar包
- JAVA POI 应用--读取Excel
- JAVA读取与导出EXCEL(poi)