Java中如何查看资源文件是否存在?

发布于 2025-01-07 07:58:53 字数 270 浏览 1 评论 0原文

我试图将文本输出到 Java 中的资源文件,如下所示:

File file = new File(MLM.class.getClassLoader().getResource("mazes.txt").toString());
BufferedWriter out = new BufferedWriter(new FileWriter(file));
..

但由于资源文件尚未创建,所以出现空指针异常。如果尚不存在,如何先创建一个空白资源文件以避免此错误?

I am trying to output text to a resource file in Java like so:

File file = new File(MLM.class.getClassLoader().getResource("mazes.txt").toString());
BufferedWriter out = new BufferedWriter(new FileWriter(file));
..

but because the resource file has not been created I get a null pointer exception. How can I create a blank resource file first if it doesn't exist already to avoid this error?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

彩虹直至黑白 2025-01-14 07:58:53

一个简单的空检查就足够了

URL u = MLM.class.getResource("/mazes.txt");
if (u != null) {
         ...
}

从javadoc for 获取资源

退货:
URL 对象,如果未找到具有此名称的资源,则返回 null

A simple null check would suffice

URL u = MLM.class.getResource("/mazes.txt");
if (u != null) {
         ...
}

From the javadoc for getResource

Returns:
A URL object or null if no resource with this name is found

剩余の解释 2025-01-14 07:58:53

您可以在代码之前使用:

File.createNewFile()

自动创建一个以此抽象路径名命名的新的空文件
当且仅当具有该名称的文件尚不存在时。支票为
文件是否存在,如果不存在则创建文件
存在是相对于所有其他操作而言是原子的单个操作
可能影响文件的文件系统活动。

You can use before your code :

File.createNewFile()

Atomically creates a new, empty file named by this abstract pathname
if and only if a file with this name does not yet exist. The check for
the existence of the file and the creation of the file if it does not
exist are a single operation that is atomic with respect to all other
filesystem activities that might affect the file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文