java filereader读取excel
时间: 2023-07-07 11:27:53 浏览: 154
Java FileReader不能直接读取Excel文件,因为Excel文件是二进制格式的。如果要读取Excel文件,你可以使用Apache POI库。以下是一个简单的例子,使用Apache POI库和FileInputStream来读取Excel文件:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.ss.usermodel.CellType;
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 ExcelReader {
public static void main(String[] args) throws IOException {
File file = new File("path/to/excel/file.xlsx");
FileInputStream fis = new FileInputStream(file);
XSSFWorkbook workbook = new XSSFWorkbook(fis);
XSSFSheet sheet = workbook.getSheetAt(0);
int rowNum = sheet.getLastRowNum() + 1;
int colNum = sheet.getRow(0).getLastCellNum();
for (int i = 0; i < rowNum; i++) {
XSSFRow row = sheet.getRow(i);
for (int j = 0; j < colNum; j++) {
XSSFCell cell = row.getCell(j);
if (cell.getCellType() == CellType.STRING) {
System.out.print(cell.getStringCellValue() + "\t");
} else if (cell.getCellType() == CellType.NUMERIC) {
System.out.print(cell.getNumericCellValue() + "\t");
} else {
System.out.print("NA" + "\t");
}
}
System.out.println();
}
workbook.close();
fis.close();
}
}
```
在这个例子中,我们使用了XSSFWorkbook类来创建一个Excel工作簿对象,然后使用getSheetAt()方法获取第一个工作表。接下来,我们获取行数和列数,并使用两个嵌套的循环遍历所有单元格。最后,我们使用close()方法关闭工作簿和文件输入流。
阅读全文