gpt4 book ai didi

java - 写入文件以创建 JAR 时出现 NullPointerException

转载 作者:行者123 更新时间:2023-12-02 00:03:13 25 4
gpt4 key购买 nike

我正在尝试写入文件以创建 JAR。但我遇到了 NullPointerException 问题。我的文件位于类路径中。

(我使用 getClass() 因为我将创建一个 JAR 文件。)

有什么原因我会在这里收到 NullPointerException 吗?感谢您的帮助。

这是代码:

package Library;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URISyntaxException;

public class WriteJARSample {
public WriteJARSample() throws URISyntaxException, FileNotFoundException, FileNotFoundException, IOException{
write();
}
public void write() throws URISyntaxException, FileNotFoundException, IOException{
try{
File Mf=new File(getClass().getClassLoader().getResource("AllBookRecords.txt").toURI());
File Tf=new File(getClass().getClassLoader().getResource("Boutput.txt").toURI());
BufferedReader Bbr=new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("AllBookRecords.txt")));
PrintWriter Bpw=new PrintWriter(Mf);
String Bs;
while( (Bs=Bbr.readLine()) != null ){
Bpw.println(Bs);
}
Bpw.close();
Bbr.close();
Mf.delete();
Tf.renameTo(Mf);
}
catch(IOException ioe){

}
catch(URISyntaxException urise){

}
}
public static void main(String[] args) throws URISyntaxException, FileNotFoundException, IOException{
new WriteJARSample();
}
}

最佳答案

getClass().getResourceAsStream("AllBookRecords.txt") 与先前访问“AllBookRecords.txt”不同,也许它也应该是:

getClass().getClassLoader().getResourceAsStream("AllBookRecords.txt")

或者简单地

getClass().getResourceAsStream("/AllBookRecords.txt")

getClass().getResource(AsStream) 相对于类包(子目录)工作。

关于java - 写入文件以创建 JAR 时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14417064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com