我尝试过使用以下方法,两者都给出了错误“java.io.FileNotFoundException”
JSONArray a = (JSONArray) parser.parse(new FileReader(bucket+"/"+key));
和
JSONArray a = (JSONArray) parser.parse(new FileReader(http://S3URL...);
答案 0 :(得分:0)
您无法直接从S3读取文件。有多种方法可以做到这一点:
使用Amazon Web Services提供的HTTP接口。您可以参考此文档http://docs.aws.amazon.com/AmazonS3/latest/dev/RetrievingObjectUsingJava.html
使用Amazon AWS SDK http://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk
读完文件后,您可以传递IO Stream来创建JSON对象。
这与首先从您的存储桶下载文件然后从阅读内容创建JSON对象一样好
答案 1 :(得分:0)
这对我有用
BufferedReader reader = new BufferedReader(new InputStreamReader(response.getObjectContent())); 字符串行; String iString =“”;
while((line = reader.readLine())!= null){iString = iString + line; }
JSONParser解析器= new JSONParser(); JSONObject obj =(JSONObject)parser.parse(iString);