gpt4 book ai didi

java - 使用 getResourceAsStream 与 InputStreamReader 发生 NullPointerException

转载 作者:行者123 更新时间:2023-12-01 12:54:27 27 4
gpt4 key购买 nike

我正在尝试从程序的 JAR 存档中读取文本文件。当我调用该方法时,出现空指针异常。我找不到很多关于如何在线执行此操作的示例,它们都很像我正在使用的示例。

public class ConsoleHelp {
public void print() {
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(getClass().getResourceAsStream("/data/cmdhelp")));

int c;
do {
c = reader.read();
System.out.print((char) c);
} while (c > -1);
System.out.println();
} catch (IOException e) {
System.out.println("JAR file has not been packaged correctly.");
}
}
}

当我尝试运行此代码时出现此错误:$ java -jar accface-0.1-test8.jar 帮助

Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at frontend.ConsoleHelp.print(ConsoleHelp.java:11)
at frontend.Command.main(Command.java:112)
... 5 more

最佳答案

使用 7zip、WinZip 等打开 jar。并检查路径“/data/cmdhelp”。这必须区分大小写。

关于java - 使用 getResourceAsStream 与 InputStreamReader 发生 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24003707/

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