使用最新的poi-4.1.0.jar导入导出Excel表格——读取Excel表格数据用法
其中主要的一点心得就是在switch语句哪里进行读取数据转换时,我看到网上的一些用法都是使用
HSSFCell.CELL_TYPE_STRING、HSSFCell.CELL_TYPE_BOOLEAN和HSSFCell.CELL_TYPE_NUMERIC 等方法或者CellType.STRING ,CellType.NUMERIC,CellType.BOOLEAN等类型,而我自己在使用最新的poi-4.1.0.jar时都是无定义,最后尝试使用STRING ,NUMERIC,BOOLEAN,发现可以使用。具体看代码。
package poi_demo;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;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;public class PoiExcelTest {public static void main(String[] args) throws IOException {try {//速去数据流System.out.println("1.读取student.xls工作流");//使用到的Excel文件路径 D:\\eclipse\\eclipse-workspace\\poi_demo\\student.xlsInputStream inp = new FileInputStream(new File("D:\\eclipse\\eclipse-workspace\\poi_demo\\student.xls"));//解析工作簿System.out.println("2.解析生成工作簿");HSSFWorkbook workbook = new HSSFWorkbook(inp);//解析工作表int size = workbook.getNumberOfSheets();System.out.println("一共有"+size+"个工作表Sheet");//循环处理读取每一个工作表中的数据for (int i = 0; i <size; i++) {HSSFSheet sheet = workbook.getSheetAt(i);System.out.println("读取当前工作表名称"+sheet.getSheetName());//得到有效行数int rowNumber = sheet.getPhysicalNumberOfRows();System.out.println("有效行数"+rowNumber);for (int rowIndex = 0; rowIndex < rowNumber; rowIndex++) {System.out.println("读取第"+(rowIndex+1)+"行的数据");if (rowIndex == 0) {continue;}HSSFRow row = sheet.getRow(rowIndex);for (int cellIndex = 0; cellIndex < 4; cellIndex++) {HSSFCell cell = row.getCell(cellIndex);Object cellValue = null;switch (cell.getCellType()) {case NUMERIC:{cellValue = String.valueOf(cell.getNumericCellValue());break;}case STRING:{cellValue = cell.getStringCellValue();break;}case BOOLEAN:{break;}case FORMULA:{break;}default:break;}System.out.println("列值"+cellValue);}}}} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
需要使用到的jar包
使用的Excel表格:
备注:此处还应该加上输出结果的截图。
我还是喜欢你
像风走了八千里,不问归期
二月花开,三秋叶落
它见过哭泣的鱼
我还是喜欢你
像鱼看罢半夜雨,泪藏水底
没有痕迹,不必提起
它听说梅已忘记
我还是喜欢你
像梅吻了一场雪,鲜血淋漓
等风春来,花雪成溪
它希望再遇见你
终于
鱼死在了泪一样咸的海
风再找不到来的路
梅被狠狠碾碎成了泥
都是没有心的,何苦念念不忘
我还是喜欢你
1.我还是很喜欢你,像风走了八千里,不问归期。
2.我还是很喜欢你,像雨洒落在热带与极地,不远万里。
3.我还是很喜欢你,像鲸沉于海底温好像发语音柔呼吸,痴极嗔极。
4.我还是很喜欢你,像等了多年故人的老城门,茕茕孑立。
5.我还是很喜欢你,像鲸鱼缺氧于六千四百米的深海,乐此不疲。
6.我还是很喜欢你,像柳动蝉鸣日落潮汐,不能自已。
7.我还是很喜欢你,像云漂泊九万里,不曾歇息。
8.我还是很喜欢你,像日落前洒下的余晖,不忍离去。
9.我还是很喜欢你,像太阳升了落去,无论朝夕。