从jar获取资源
我有文件jar:
myJar/res/endingRule.txt myJar/wordcalculator/merger/Marge.class
在Marge.java我有代码:
private static final String ENDINGS_FILE_NAME = "res/endingRule.txt"; .... InputStream inputStream = getClass().getClassLoader().getResourceAsStream(ENDINGS_FILE_NAME); .....
但是在这个inputStream为null之后。 如何使用资源? 为什么空?
要检索jar中的文件,请使用:
private static final String ENDINGS_FILE_NAME = "/res/endingRule.txt"; ... InputStream is = getClass( ).getResourceAsStream(ENDINGS_FILE_NAME);
你的名字看起来不对 – 错误的扩展名和错误的斜杠:
private static final String ENDINGS_FILE_NAME = "res/endingRule.txt";
\
被解释为转义字符而不是目录分隔符。 文件名也是关闭的。 尝试:
private static final String ENDINGS_FILE_NAME = "res/endingRule.txt";
使用:
private static final String ENDINGS_FILE_NAME = "res\\endingRule.txt";