您当前的位置:首页 > 互联网教程

java如何读取整个excel文件的内容

发布时间:2025-05-21 05:51:11    发布人:远客网络

java如何读取整个excel文件的内容

一、java如何读取整个excel文件的内容

1、本例使用java来读取excel的内容并展出出结果,代码如下:

2、import java.io.BufferedInputStream;

3、import java.io.FileInputStream;

4、import java.io.FileNotFoundException;

5、import java.text.DecimalFormat;

6、import java.text.SimpleDateFormat;

7、import org.apache.poi.hssf.usermodel.HSSFCell;

8、import org.apache.poi.hssf.usermodel.HSSFDateUtil;

9、import org.apache.poi.hssf.usermodel.HSSFRow;

10、import org.apache.poi.hssf.usermodel.HSSFSheet;

11、import org.apache.poi.hssf.usermodel.HSSFWorkbook;

12、import org.apache.poi.poifs.filesystem.POIFSFileSystem;

13、 public static void main(String[] args) throws Exception{

14、 File file= new File("ExcelDemo.xls");

15、 String[][] result= getData(file, 1);

16、 int rowLength= result.length;

17、 for(int i=0;i<rowLength;i++){

18、 for(int j=0;j<result[i].length;j++){

19、 System.out.print(result[i][j]+"\t\t");

20、*读取Excel的内容,第一维数组存储的是一行中格列的值,二维数组存储的是多少个行

21、*@param ignoreRows读取数据忽略的行数,比喻行头不需要读入忽略的行数为1

22、*@return读出的Excel中数据的内容

23、*@throws FileNotFoundException

24、 public static String[][] getData(File file, int ignoreRows)

25、 throws FileNotFoundException, IOException{

26、 List<String[]> result= new ArrayList<String[]>();

27、 BufferedInputStream in= new BufferedInputStream(new FileInputStream(

28、 POIFSFileSystem fs= new POIFSFileSystem(in);

29、 HSSFWorkbook wb= new HSSFWorkbook(fs);

30、 for(int sheetIndex= 0; sheetIndex< wb.getNumberOfSheets(); sheetIndex++){

31、 HSSFSheet st= wb.getSheetAt(sheetIndex);

32、 for(int rowIndex= ignoreRows; rowIndex<= st.getLastRowNum(); rowIndex++){

33、 HSSFRow row= st.getRow(rowIndex);

34、 int tempRowSize= row.getLastCellNum()+ 1;

35、 String[] values= new String[rowSize];

36、 for(short columnIndex= 0; columnIndex<= row.getLastCellNum(); columnIndex++){

37、 cell= row.getCell(columnIndex);

38、//注意:一定要设成这个,否则可能会出现乱码

39、 cell.setEncoding(HSSFCell.ENCODING_UTF_16);

40、 case HSSFCell.CELL_TYPE_STRING:

41、 value= cell.getStringCellValue();

42、 case HSSFCell.CELL_TYPE_NUMERIC:

43、 if(HSSFDateUtil.isCellDateFormatted(cell)){

44、 Date date= cell.getDateCellValue();

45、 value= new SimpleDateFormat("yyyy-MM-dd")

46、 value= new DecimalFormat("0").format(cell

47、 case HSSFCell.CELL_TYPE_FORMULA:

48、//导入时如果为公式生成的数据则无值

49、 if(!cell.getStringCellValue().equals("")){

50、 value= cell.getStringCellValue();

51、 value= cell.getNumericCellValue()+"";

52、 case HSSFCell.CELL_TYPE_BLANK:

53、 case HSSFCell.CELL_TYPE_ERROR:

54、 case HSSFCell.CELL_TYPE_BOOLEAN:

55、 value=(cell.getBooleanCellValue()== true?"Y"

56、 if(columnIndex== 0&& value.trim().equals("")){

57、 values[columnIndex]= rightTrim(value);

58、 String[][] returnArray= new String[result.size()][rowSize];

59、 for(int i= 0; i< returnArray.length; i++){

60、 returnArray[i]=(String[]) result.get(i);

61、 public static String rightTrim(String str){

62、 for(int i= length- 1; i>= 0; i--){

63、 return str.substring(0, length);

二、怎么用java代码读取excel文件

1、本例使用java来读取excel的内容并展出出结果,代码如下:

2、import java.io.BufferedInputStream;

3、import java.io.FileInputStream;

4、import java.io.FileNotFoundException;

5、import java.text.DecimalFormat;

6、import java.text.SimpleDateFormat;

7、import org.apache.poi.hssf.usermodel.HSSFCell;

8、import org.apache.poi.hssf.usermodel.HSSFDateUtil;

9、import org.apache.poi.hssf.usermodel.HSSFRow;

10、import org.apache.poi.hssf.usermodel.HSSFSheet;

11、import org.apache.poi.hssf.usermodel.HSSFWorkbook;

12、import org.apache.poi.poifs.filesystem.POIFSFileSystem;

13、 public static void main(String[] args) throws Exception{

14、 File file= new File("ExcelDemo.xls");

15、 String[][] result= getData(file, 1);

16、 int rowLength= result.length;

17、 for(int i=0;i<rowLength;i++){

18、 for(int j=0;j<result[i].length;j++){

19、 System.out.print(result[i][j]+"\t\t");

20、*读取Excel的内容,第一维数组存储的是一行中格列的值,二维数组存储的是多少个行

21、*@param ignoreRows读取数据忽略的行数,比喻行头不需要读入忽略的行数为1

22、*@return读出的Excel中数据的内容

23、*@throws FileNotFoundException

24、 public static String[][] getData(File file, int ignoreRows)

25、 throws FileNotFoundException, IOException{

26、 List<String[]> result= new ArrayList<String[]>();

27、 BufferedInputStream in= new BufferedInputStream(new FileInputStream(

28、 POIFSFileSystem fs= new POIFSFileSystem(in);

29、 HSSFWorkbook wb= new HSSFWorkbook(fs);

30、 for(int sheetIndex= 0; sheetIndex< wb.getNumberOfSheets(); sheetIndex++){

31、 HSSFSheet st= wb.getSheetAt(sheetIndex);

32、 for(int rowIndex= ignoreRows; rowIndex<= st.getLastRowNum(); rowIndex++){

33、 HSSFRow row= st.getRow(rowIndex);

34、 int tempRowSize= row.getLastCellNum()+ 1;

35、 String[] values= new String[rowSize];

36、 for(short columnIndex= 0; columnIndex<= row.getLastCellNum(); columnIndex++){

37、 cell= row.getCell(columnIndex);

38、//注意:一定要设成这个,否则可能会出现乱码

39、 cell.setEncoding(HSSFCell.ENCODING_UTF_16);

40、 case HSSFCell.CELL_TYPE_STRING:

41、 value= cell.getStringCellValue();

42、 case HSSFCell.CELL_TYPE_NUMERIC:

43、 if(HSSFDateUtil.isCellDateFormatted(cell)){

44、 Date date= cell.getDateCellValue();

45、 value= new SimpleDateFormat("yyyy-MM-dd")

46、 value= new DecimalFormat("0").format(cell

47、 case HSSFCell.CELL_TYPE_FORMULA:

48、//导入时如果为公式生成的数据则无值

49、 if(!cell.getStringCellValue().equals("")){

50、 value= cell.getStringCellValue();

51、 value= cell.getNumericCellValue()+"";

52、 case HSSFCell.CELL_TYPE_BLANK:

53、 case HSSFCell.CELL_TYPE_ERROR:

54、 case HSSFCell.CELL_TYPE_BOOLEAN:

55、 value=(cell.getBooleanCellValue()== true?"Y"

56、 if(columnIndex== 0&& value.trim().equals("")){

57、 values[columnIndex]= rightTrim(value);

三、在java中如何使用poi从excel中读取数据

1、使用EasyExcel读取Excel文件在Java中的流程相当直观,借助于阿里开源的EasyExcel库,开发者可以轻松地完成这一任务。EasyExcel提供了一套简单而强大的API,帮助开发者快速实现Excel数据的读取。

2、以下是一个示例代码,展示如何使用EasyExcel读取Excel文件:

3、List dataList= EasyExcel.read("/path/to/your/excel/file.xlsx")

4、这里需要注意的是,您需要将`/path/to/your/excel/file.xlsx`替换为实际的Excel文件路径,同时,`YourData`类应当根据Excel文件中的列名和数据类型进行创建,以确保与文件内容的匹配。请根据实际项目需求定义这个类。

5、为了深入了解EasyExcel的用法和功能,您还可以参考其官方文档:基于Java的Excel处理工具| Easy Excel。这份文档提供了详细的API介绍、示例代码以及常见问题解答,有助于您更熟练地使用这个库。

6、总之,使用EasyExcel进行Excel文件数据读取是一个高效且便捷的过程。借助于其简单的API和丰富的文档支持,开发者可以轻松地将Excel数据整合到Java应用中,从而实现更加灵活和强大的数据处理功能。