文件虽然存在但未找到(Java)

Omaja7

我正在尝试从 Java 代码中读取 javascript 文件内容。这是我的代码:

 String javascript = "";
 URL url = getClass().getResource("/elementController.js");
 System.out.println(url.toString());
 try {
     Scanner sc = new Scanner(new File(url.getPath()));
     while (sc.hasNext()) {
         javascript += sc.nextLine() + "\n";
     }
     sc.close();

     } catch (Exception e) {
         e.printStackTrace();
     }

System.out.println 打印以下内容:文件:/ C : /Users/J%c3%bcesse/IdeaProjects/JavaFxProject/target/classes/elementController.js

作为此代码执行的结果,我得到以下堆栈跟踪:

java.io.FileNotFoundException: C:\Users\J%c3%bcesse\IdeaProjects\ThesisProject\target\classes\elementController.js (The system cannot find the path specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.util.Scanner.<init>(Scanner.java:611)
at gui.WebViewWindow$MyBrowser.<init>(WebViewWindow.java:82)
at gui.WebViewWindow.display(WebViewWindow.java:58)

但是当我转到 javascript 文件所在的目录时,我可以看到它在那里。目录图片:

目录结构

我不知道为什么会出现此错误,即使该文件存在于那里。有什么建议么?

用户207421

URL 不是文件名,资源也不是文件。FileInputStream由于这两个原因,您不能使用它。一旦资源被打包到你的 JAR 文件中,整个方案就会崩溃。您需要使用资源的输入流:

URL url = getClass().getResource("/elementController.js");
System.out.println(url.toString());
try {
    Scanner sc = new Scanner(url.openStream());

由于您只是在阅读行,因此没有充分的理由Scanner实际使用 a :您也可以使用BufferReader.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

psql:尽管存在关系,但未找到任何关系

来自分类Dev

jekyll已安装,但未找到命令

来自分类Dev

QIBASE已建立但未找到

来自分类Dev

导入SVN时,获取文件存在或文件未找到错误

来自分类Dev

致命:程序autoreconf是必需的,但未找到

来自分类Dev

已安装iPython但未找到

来自分类Dev

rvm已安装但未找到

来自分类Dev

Xdebug .so文件存在,但仍报告未找到

来自分类Dev

导入SVN中,获取文件存在或文件未找到错误

来自分类Dev

尽管文件存在,但未找到Excel VBA文件

来自分类Dev

致命:程序autoreconf是必需的,但未找到

来自分类Dev

尽管在软件包列表文件中,但未找到软件包

来自分类Dev

尽管core_pattern看起来不错,但未找到Ubuntu 15.10核心文件

来自分类Dev

vi打开Vim,但未找到vim

来自分类Dev

Pytest在PATH中但未找到

来自分类Dev

Rails 5,路线声明但未找到

来自分类Dev

sonarlint规则出现在错误列表中,但未找到规则集文件

来自分类Dev

Java反射:即使存在注释也未找到

来自分类Dev

“未找到休眠设备”,虽然我已经更新了 /etc/fstab

来自分类Dev

尽管存在,但未找到记录

来自分类Dev

尽管存在,但未找到 SQL 列

来自分类Dev

尽管文件存在,但获取“未找到模块”

来自分类Dev

查找未找到文件

来自分类Dev

未找到文件:-Ttext

来自分类Dev

未找到 NMSSH 文件

来自分类Dev

Heroku 部署成功但未找到模块

来自分类Dev

即使文件存在,也未找到反应原生模块错误

来自分类Dev

未找到文件:HelloWorld.java

来自分类Dev

文件未找到错误: