Las formas existentes de agregar contenido a un archivo S3 usando métodos en la clase AmazonS3 son
¿Hay alguna forma de crear un OutputStream para un objeto S3 existente en el que se puedan escribir valores de una lista? Veo que no hay API para hacerlo.
Es posible crear un S3OutputStream que envuelva al cliente de AmazonS3. Consulte esta esencia para la implementación: https://gist.github.com/blagerweij/ad1dbb7ee2fff8bcffd372815ad310eb Detecta automáticamente archivos grandes y utiliza transferencias de varias partes cuando es necesario. Utiliza una matriz de bytes para el almacenamiento en búfer, el tamaño de ese búfer depende de su caso de uso. (el valor predeterminado es 10 MB)
Por ejemplo:
final S3Client s3Client = AmazonS3ClientBuilder.defaultClient(); final OutputStream out = new S3OutputStream(s3Client, "bucket", "path/file.ext");Puede echar un vistazo a AWS SDK Realización de operaciones en un objeto de Amazon S3
... S3Client s3; ... // Put Object s3.putObject(bucket,object);