当前位置: 首页 > 知识库问答 >
问题:

Java Selenium:Eclipse无法找到我的文件,但我的文件在其工作目录中

公羊涛
2023-03-14

我正在使用Eclipse和Java库:Java。伊奥。文件输入流;

我的脚本找不到要使用构造函数FileInputStream分配给变量的文件,即使该文件位于工作目录中。

这是我的代码:

package login.test;
import java.io.File;
import java.io.FileInputStream;
public class QTI_Excelaccess {
        public static void main(String [] args){

        //verify what the working directory is
        String curDir = System.getProperty("user.dir");
        System.out.println("Working Directory is: "+curDir);

        //verify the file is recognized within within the code
         File f = new File("C:\\\\Users\\wes\\workspace\\QTI_crud\\values.xlsx");
            if (f.exists() && !f.isDirectory()){
                System.out.println("Yes, File does exist");
            } else {
                System.out.println("File does not exist");
            }

        //Assign the file to src
        File src = new File("C:\\\\Users\\wes\\workspace\\QTI_crud\\values.xlsx");
        System.out.println("SRC is now: "+src);

        //Get Absolute Path of the File
        System.out.println(src.getAbsolutePath()); 


        FileInputStream fis = new FileInputStream(src);

        }*

我的输出是(当我注释掉最后一行时)是

“工作目录是:C:\Users\wes\workspace\QTI_crud是的,文件确实存在SRC现在是:C:\Users\wes\workspace\QTI_crud\values.xlsx C:\Users\wes\workspace\QTI_crud\values.xlsx”

当我没有注释掉最后一行时,我得到了错误:

线程“main”java.lang.Error:未解决的编译问题:未处理的异常类型FileNotFoundException

at login.test.QTI_Excelaccess.main(QTI_Excelaccess.java:30)"

我的代码哪里出错了?我对Java很陌生

非常感谢!

共有1个答案

韩涵衍
2023-03-14

代码的主要问题是,当您知道该文件不存在于指定的目录下时,您试图读取该文件。因此,它会给你错误。

把它重构成这样

if (f.exists() && !f.isDirectory()){
        System.out.println("Yes, File does exist");
        try {
            FileInputStream fis = new FileInputStream(f);
            //perform operation on the file
            System.out.println(f.getAbsolutePath()); 
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    } else {
        System.out.println("File does not exist");
    }

如您所见,如果文件存在,则尝试读取该文件。如果没有,你什么都不做。

 类似资料:
  • 我已经将一个 Ruby 项目加载到 RubyMine 中,它的规范文件像往常一样位于目录中。右键单击并选择对任何单个等级库文件的“运行”可以正确运行它。右键单击并选择目录上的“全部运行”会导致每个测试失败并显示以下消息: 无法加载:/Users/Nathaniel/repos/close-web/spec/compositions/analysis/analysis _ data _ spec .

  • 我是Spring Boot的新手,我的问题是我有Spring Boot项目,我打算用Thymeleaf查看我的超文本标记语言页面,但Spring无法解析我的JavaScript和CSS文件。 这是我的胸腔构造 这是我的HTML页面标题:

  • 我的Checkstyle配置似乎找不到我的suppressions.xml,但它确实存在并且它使用的filepath有效。我的checkstyle.xml和suppressions.xml都在config/check style中。我的checkstyle.xml有这个: 当我运行时,堆栈跟踪显示如下: 正如我提到的,我可以将该文件路径复制并粘贴到文件资源管理器中,它就会打开。我也试着硬编码完整的

  • 在我的程序中,src目录下列出了三个文件夹:文件、声音、图像。我不知道为什么我的代码没有被检测到。当我运行这个程序时,我收到了这样一条消息:“java.io.FileNotFoundException:files\7.txt(系统找不到指定的路径)”。我有图片附在这里。请帮忙。 下面是我的代码: 关于文件File=新文件(resource.toURI());以下是我尝试过但仍然无效的内容: 下面是

  • 问题内容: 我愿意将文件保存在用户的“我的文档”文件夹中。 我试图得到这样的位置: 然后,我意识到这在将语言设置为另一种语言(例如法语)的系统中不起作用。 还有另一种方法可以有效地获取“我的文档”文件夹吗? 问题答案: 如果您不介意使用Swing,显然可以使用以下技巧: (来源:http : //www.rgagnon.com/javadetails/java-0572.html)

  • 问题内容: 我坚信这只是一种语法-但是我不知道为什么我的代码: 将无法正常工作-它显然可以进入“ testfilefolder”文件夹,并告诉我该文件在那里,即未找到错误消息“ file2.txt”。因此它可以找到它来告诉我找不到它… 但是,我得到了这段代码: 奖金-这是做我想做的事情的好方法吗(从文件中读取并计算单词的出现频率)?这是我使用Python的第一天(尽管我有很多编程经验。) 我必须说