java 中的可执行文件时如何写入文件
how to write to a file when it's an executable in java
嗨
我在写入文件时遇到问题,它在程序(netbeans)中工作,但是当它导出到 jar 文件时,它会抛出异常,"FileNotFound." 我检查了 jar 中的文件夹,它是在那里,我想我需要像在阅读文件中使用流一样使用流:
InputStream u= FM.class.getResourceAsStream("/genex/files/data.txt");
try (InputStreamReader f = new InputStreamReader(u)) {what I wrote}
这工作得很好,我只需要一个像 getResourceAsStream() 这样的方法用于 OutputStreams
(顺便说一句,FM 是 class 名称)
更新: 对于那些真正想在 jar 中写入文件的人来说,不可能。 但是, 我找到了另一种存储所有文件的方法:
-写作
File file = new File("/GH/GX/save.txt");
if (!file.exists()) {
file.getParentFile().mkdirs();
file.createNewFile();
}
try (PrintWriter writer = new PrintWriter(file)) {what you want to write}
-阅读
File file = new File("/GH/GX/save.txt");
if (!file.exists()) {
return;
}
try (FileReader f = new FileReader(file)) {
//fr = new FileReader(f);
try (BufferedReader br = new BufferedReader(f)) {what you want to read}}
所以我希望这篇文章对你有所帮助:)
您只能读取 jar 中的文件而不能写入它们。
嗨
我在写入文件时遇到问题,它在程序(netbeans)中工作,但是当它导出到 jar 文件时,它会抛出异常,"FileNotFound." 我检查了 jar 中的文件夹,它是在那里,我想我需要像在阅读文件中使用流一样使用流:
InputStream u= FM.class.getResourceAsStream("/genex/files/data.txt");
try (InputStreamReader f = new InputStreamReader(u)) {what I wrote}
这工作得很好,我只需要一个像 getResourceAsStream() 这样的方法用于 OutputStreams
(顺便说一句,FM 是 class 名称)
更新: 对于那些真正想在 jar 中写入文件的人来说,不可能。 但是, 我找到了另一种存储所有文件的方法: -写作
File file = new File("/GH/GX/save.txt");
if (!file.exists()) {
file.getParentFile().mkdirs();
file.createNewFile();
}
try (PrintWriter writer = new PrintWriter(file)) {what you want to write}
-阅读
File file = new File("/GH/GX/save.txt");
if (!file.exists()) {
return;
}
try (FileReader f = new FileReader(file)) {
//fr = new FileReader(f);
try (BufferedReader br = new BufferedReader(f)) {what you want to read}}
所以我希望这篇文章对你有所帮助:)
您只能读取 jar 中的文件而不能写入它们。