У вас есть исключение, потому что a.json
не может быть найдено вашим Class.getResourceAsStream () , и в этом случае это возвращает нуль вместо потока.
Ваш a.json
Файл должен находиться в том же пакете, что и класс JSONParser
, как у вас сейчас.Это один из ваших классов или утилиты из внешней библиотеки?
Если это библиотека, возможно, вы можете извлечь поток из класса, который находится в том же пакете, что и a.json
, и затем передать егов качестве параметра:
InputStream is = YourClassBesidesTheFile.class.getResourceAsStream("a.json");
String jsonTxt = IOUtils.toString( is );
или, возможно, используйте полный путь к файлу, например, "/some/package/etc/etc/a.json"
:
InputStream is = JSONParser.class.getResourceAsStream("/some/package/etc/etc/a.json");
String jsonTxt = IOUtils.toString( is );
Чтобы решить эту проблему, ваш файл должен быть найден с помощью Class.getResourceAsStream()
метод, хотя реальная проблема заключается в получении содержимого файла в виде потока, независимо от того, как вы это делаете.