Как прочитать файл Json из ресурсов

#java #spring #maven

#java #spring #maven

Вопрос:

Я разрабатываю весеннее Java-приложение с Maven. Мне нужно прочитать файл .json, который находится в папке Resources в моем проекте, а затем снова вернуть его контроллером в виде файла .json. Как я могу это сделать? Я новичок…

Комментарии:

1. Наконец, я использовал: FileReader reader = new FileReader(«classpath:myfile») ; JsonParser JsonParser = new JsonParser(); JSONArray JSONObject = (JSONArray) JsonParser.parse(reader); return JSONObject; Работает хорошо, у меня проблемы только с локальными символами в файле json.

2. Смотрите java.io.FileReader : » Конструкторы этого класса предполагают, что кодировка символов по умолчанию [является] подходящей. Чтобы указать […] значение[..] самостоятельно, создайте InputStreamReader в FileInputStream. »

Ответ №1:

Папка ресурсов находится в вашем пути к классу. Любой файл, который находится в вашем пути к классу, вы можете прочитать через это.

 InputStream in = this.getClass().getClassLoader().getResourceAsStream("yourFile.json");
  

вы можете прочитать, используя getResourceAsStream .

Ответ №2:

Если вы получаете доступ к файлу в Spring bean, вы также можете использовать подобную аннотацию @Value (она работает только в spring beans)

 @Value("classpath:data/resource-data.txt")
Resource resourceFile;
  

https://www.baeldung.com/spring-classpath-file-access#2-using-value