Java 中从相对路径读取文件:解决“找不到路径”问题
Java 中,使用 java 通过相对路径访问文件.io.File 有时会遇到错误“系统找不到指定的路径”。当处理位于不同包或 JAR 中的文件时,可能会发生这种情况。要解决此问题,需要采用替代方法。
解决方案 1:通过类路径访问文件
与其使用 File 中的相对路径,不如从以下位置获取文件类路径。这确保了独立于当前工作目录。假设该文件与访问它的类位于同一个包中,则可以使用以下代码:
<code class="java">URL url = getClass().getResource("ListStopWords.txt"); File file = new File(url.getPath());</code>
解决方案 2:使用 InputStream
如果需要结果是获得文件的InputStream,直接从类路径访问它会更有效:
<code class="java">InputStream input = getClass().getResourceAsStream("ListStopWords.txt");</code>
属性文件的注意事项
如果文件是属性文件(包含键值对),InputStream可用于直接加载属性:
<code class="java">Properties properties = new Properties(); properties.load(getClass().getResourceAsStream("ListStopWords.txt"));</code>
静态上下文注意事项
访问文件时在静态上下文中,将上述代码示例中的 getClass() 替换为 YourClass.class 或 FileLoader.class。
通过采用这些技术,可以可靠地从 Java 中的相对路径访问文件,避免“路径Not Found”错误并确保应用程序独立于当前工作目录。
以上是在Java中读取相对路径的文件时如何避免'Path Not Found”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!