我试图从.jar(由ant builder.xml制作)加载.xml文件,但是遇到了异常。
我的ant build.xml中的代码:
我班上的代码:
try {
xml = new File(this.getClass().getResource("/TaskData.xml").getFile());
} catch (Exception e) {
e.printStackTrace();
我得到的例外:
java.io.FileNotFoundException: C:\Users\agent_000\Desktop\....file:\C:\Users\agent_000\Desktop\%d1%85%d1%83\build\sample.jar!\TaskData.xml (
为什么它找不到.xml文件?
提前致谢!
答案 0 :(得分:0)
你可以这样做
URL url = new URL("jar:file:/path--to-your Jar !/TaskData.xml");
InputStream is = url.openStream();
System.out.println(is);
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
System.out.println(reader.readLine());
或者要求ClassLoader通过getResourceAsStream为资源返回一个InputStream:
InputStream in = getClass().getResourceAsStream("/TaskData.txt");
BufferedReader reader = new BufferedReader(new InputStreamReader(in));