How can I read an AWS S3 File with Java?
amazon-s3, amazon-web-services, java
Solution
The 'File' class from Java doesn't understand that S3 exists. Here's an example of reading a file from the AWS documentation:
AmazonS3 s3Client = new AmazonS3Client(new ProfileCredentialsProvider());
S3Object object = s3Client.getObject(new GetObjectRequest(bucketName, key));
InputStream objectData = object.getObjectContent();
// Process the objectData stream.
objectData.close();
Problem
I tried to read a file from AWS S3 to my java code: ``` File file = new File("s3n://mybucket/myfile.txt"); FileInputStream fileInput = new FileInputStream(file); ``` Then I got an error: ``` java.io.FileNotFoundException: s3n:/mybucket/myfile.txt (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:146) ``` Is there a way to open/read a file from AWS S3? Thanks a lot!