问题描述
我需要访问它存储在Resources文件中的Json文件中的一些数据。代码在eclipse中编译,但是当我尝试导出并以JAR文件运行时,出现此异常:
Json文件的位置是:
我尝试使用:
Thread.currentThread()。getContextClassLoader() .getResourceAsstream(“ Automationjson.json”);
或
Thread.currentThread()。getContextClassLoader() .getResourceAsstream(“ / Automationjson.json”);
Main(){
InputStream jsonFileStream = getClass().getClassLoader().getResourceAsstream("Automationjson.json");
String jsonString = readFromJARFile();
jsonData();
}
private void jsonData() {
JsonNode node = null;
try {
node = JsonHelper.parse(jsonString);
} catch (IOException e) {
e.printstacktrace();
}
secondUserName = node.get("secondUserName").asText();
password = node.get("password").asText();
}
public String readFromJARFile() throws IOException {
InputStreamReader isr = new InputStreamReader(jsonFileStream);
BufferedReader br = new BufferedReader(isr);
StringBuffer sb = new StringBuffer();
String line;
while ((line = br.readLine()) != null) {
sb.append(line);
}
br.close();
isr.close();
return sb.toString();
}
Json帮助器类:
public class JsonHelper {
private static ObjectMapper objectMapper = getDefaultMapper();
static ObjectMapper getDefaultMapper() {
ObjectMapper defaultMapper = new ObjectMapper();
defaultMapper.configure(DeserializationFeature.FAIL_ON_UNKNowN_PROPERTIES,false);
return defaultMapper;
}
public static JsonNode parse(String src) throws JsonProcessingException {
return objectMapper.readTree(src);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)