Как предоставить ссылку на файл S3 в JSON Parser

Я пытался использовать следующие способы, и оба выдают ошибку как "java.io.FileNotFoundException"

JSONArray a = (JSONArray) parser.parse(new FileReader(bucket+"/"+key));

а также

JSONArray a = (JSONArray) parser.parse(new FileReader(http://S3URL...);

2 ответа

Это сработало для меня

BufferedReader reader = new BufferedReader(новый InputStreamReader(response.getObjectContent())); Струнная линия; String iString = "";

while ((line = reader.readLine ())! = null) {iString = iString + line; }

JSONParser parser = new JSONParser (); JSONObject obj = (JSONObject) parser.parse (iString);

Вы не можете прочитать файл с S3 напрямую. Есть несколько способов сделать это:

  1. Используйте HTTP-интерфейс, предоставляемый Amazon Web Services. Вы можете обратиться к этой документации http://docs.aws.amazon.com/AmazonS3/latest/dev/RetrievingObjectUsingJava.html

  2. Используйте Amazon AWS SDK http://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk

После прочтения файла вы можете передать поток ввода-вывода для создания объекта JSON.

Это так же хорошо, как сначала загрузить файл из корзины, а затем создать объект JSON из прочитанного содержимого.

Другие вопросы по тегам