Je fais actuellement l'utilisation des éléments suivants pour télécharger un fichier à S3:Enregistrer un objet BufferedImage à Amazon S3 comme un fichier
File file = new File(my_file_path);
AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials(cred));
s3.putObject(new PutObjectRequest("folder", key, file));
Les travaux ci-dessus bien, mais je veux enregistrer directement un BufferedImage
à S3 de se raser quelques secondes de mon application mais je n'ai aucune idée sur la façon de faire cela? Voici comment je sauve actuellement mon image dans un fichier:
image = new BufferedImage(rawImage.width, rawImage.height, BufferedImage.TYPE_INT_ARGB);
File file = new File(filepath);
ImageIO.write(image, "png", file);
est-il un moyen de faire de l'écriture directement à Amazon S3 comme un flux, le cas échéant, quelqu'un peut-il montrer un exemple?
En outre, est-ce une bonne idée? Si elle est sujette aux erreurs, je vais m'en tenir à ma méthode actuelle. Tout conseil apprécié.
Cela a très bien fonctionné, merci jkraybill! J'ajouterais le type de contenu 'meta.setContentType (" image/png ");' puisque lorsque j'ai essayé de l'ouvrir dans la console AWS S3, il a continué à le télécharger plutôt que de me laisser voir l'image. Juste pour que les futurs lecteurs de cette question ne trébuchent pas là-dessus. :) – Abs
Content d'être utile! – jkraybill
Parfait! fonctionne comme il se doit :) Merci! – Athar