【发布时间】:2018-03-16 08:07:38
【问题描述】:
尝试通过阅读输入等基本功能来练习 Java。
我正在尝试解析movies-sample.txt,发现于:
C:\University\BigDataManagement\Data-Mining\hw1\src\main\resources\movies-sample.txt
尝试从
联系movies-sample.txt
C:\University\BigDataManagement\Data-Mining\hw1\src\main\java
\univ\bigdata\course\MoviesReviewsQueryRunner.java
使用找到的答案here 了解如何逐行解析大文件。
File file = new File("../../../../../resources/movies-sample.txt");
我收到以下错误:
系统找不到指定的路径
鉴于以上两条路径,我做错了什么?
【问题讨论】:
-
您做错的事情是 Java 不是一种脚本语言,它不会从您的
class所在的位置运行,并且它当然不会运行从您的来源所在的位置。只需使用完整路径。 -
您的主目录不是文件的路径,而是您的 src 所在的文件夹。所以它是 C:\University\BigDataManagement\Data-Mining\hw1 (免责声明:并非总是如此,根据您运行应用程序的方式,您的家可能会有所不同!)
-
@Ben 这应该是答案 ;)
-
如果它是一个网络应用程序,那么
resources文件夹是你的根元素,否则它将是src如上所述。所以你可以通过文件名直接访问文件:new File("movies-sample.txt"); -
@Flocke
File不适用于不透明的路径,虽然您的解决方案可以在本地运行代码,但一旦打包代码,它就会中断。这就是ClassLoader.getResourceAsStream的用途。