gpt4 book ai didi

未找到 Excel 电子表格的 Java 文件路径

转载 作者:行者123 更新时间:2023-12-02 11:04:14 25 4
gpt4 key购买 nike

所以我试图打印 Excel 文件的第一行,但由于某些奇怪的原因,当文件位于我的桌面上时,它找不到该文件。这是我编写的代码:

public class ReadExcel {
public static void main(String[] args) throws FileNotFoundException, IOException {
File fileName=new File(System.getProperty("user.home"), "/Desktop/cc2017.xls");

HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileName)); //ERROR HERE

HSSFSheet sheet = workbook.getSheetAt(0);
HSSFRow row = sheet.getRow(0);

System.out.println(sheet.getRow(0).toString());
}
}

这是控制台上显示的消息:

Exception in thread "main" java.io.FileNotFoundException: \Desktop\cc2017.xls (The system cannot find the path specified) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(Unknown Source) at java.io.FileInputStream.(Unknown Source) at java.io.FileInputStream.(Unknown Source) at ReadExcel.main(ReadExcel.java:14)

错误指向的行是:

HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileName)); 

以下是该文件存在的证据:

cc2017.xls File]

您可以看到我有一个简单的文件路径,该文件是一个包含数据的 Excel 文件,但由于某种原因它没有被发现。如有任何建议,我们将不胜感激,谢谢。

最佳答案

按照您提供路径的方式,应用程序会在其工作目录中查找,就像如果您的 工作区 位于 E:/Workspace/Your App 中,那么应用程序将在在 E:/Workspace/Your App/Desktop/cc2017.xls 中查找该文件。

使用此工具从 Deskop 获取文件

new File(System.getProperty("user.home"), "/Desktop/cc2017.xls")

更新代码

//NPOIFSFileSystem fs = new NPOIFSFileSystem(new File("cc2017.xls"));

String fileName="/Desktop/cc2017.xls";
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File(System.getProperty("user.home"), fileName))); //ERROR HERE

HSSFSheet sheet = workbook.getSheetAt(0);
HSSFRow row = sheet.getRow(0);

System.out.println(sheet.getRow(0).toString());

A sample program to test

public static void main(String... args) {
String fileName = "/Desktop/cc2017.xls";
File file = new File(System.getProperty("user.home"), fileName);
System.out.println("file: " + file);
System.out.println("file exists: " + file.exists());
HSSFWorkbook hssfWorkbook = new HSSFWorkbook(new FileInputStream(file));
HSSFSheet sheet = hssfWorkbook.getSheetAt(0);
HSSFRow row = sheet.getRow(0);
System.out.println(row.toString());
}

我在桌面上创建了具有相同名称的文件,并查看了我得到的输出

file: C:\Users\CHIRAG GUPTA\Desktop\cc2017.xls
file exists: true
org.apache.poi.hssf.usermodel.HSSFRow@35f983a6

关于未找到 Excel 电子表格的 Java 文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51101859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com