我得到一个有两个节点的JSON
:
String
。String
。根据这些数据,我想在我的Amazon S3
中放置一个对象,但它需要一个File
类型参数。
我也用它来转换为byte[]
:
byte[] arrayDecoded = Base64.getDecoder().decode(node2JSON);
我想在java类Java中将 byte []转换为File ,然后将其放到Amazon S3中。
如果不使用目录中的文件,我该怎么做?
答案 0 :(得分:1)
您可以使用AmazonS3#putObject(String bucketName, String key, InputStream input,ObjectMetadata metadata)方法上传数据,而无需将文件写入文件系统 在元数据中指定文件的长度,并使用ByteArrayInputStream将字节数组转换为输入流。
ObjectMetadata objectMetadata = new ObjectMetadata();
objectMetadata.setContentLength(data.length);
amazonS3.putObject(bucketName, filename, new ByteArrayInputStream(data), objectMetadata);
答案 1 :(得分:0)
您可以在Mule中使用S3 Connector。
将set-payload与#[org.apache.commons.io.IOUtils.toByteArray(node2JSON)]一起使用