【问题标题】:Add array to newly created file in Java将数组添加到Java中新创建的文件
【发布时间】:2021-11-11 19:54:39
【问题描述】:

我正在将一个数组数组传递给一个 java 方法,我需要将该数据添加到一个新文件中(该文件将被加载到一个 s3 存储桶中)

我该怎么做?我找不到这样的例子

另外,我确定“对象”不是该属性应具有的正确数据类型。数组似乎不是正确的。

Java 方法-

public void uploadStreamToS3Bucket(String[][] locations) {
    try {
        AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
                .withRegion(String.valueOf(awsRegion))
                .build();

        String fileName = connectionRequestRepository.findStream() +".json";
        String bucketName = "downloadable-cases";
        File locationData = new File(?????)   // Convert locations attribute to a file and load it to putObject
        s3Client.putObject(new PutObjectRequest(bucketName, fileName, locationData));
    } catch (AmazonServiceException ex) {
        System.out.println("Error: " + ex.getMessage());
    }
}

【问题讨论】:

    标签: java


    【解决方案1】:

    您正在尝试使用PutObjectRequest(String,String,File) 但你没有文件。所以你可以:

    后者更好,因为您保存了中间步骤。

    至于如何将对象写入流,您可能会问:查看How can I convert an Object to Inputstream

    请记住,您必须使用相同的格式来阅读它。

    可能值得考虑一下您要保存信息的格式,因为它可能需要为另一个程序读取,或者可能由另一个人直接从存储桶中读取,并且可能存在其他格式/序列化程序该区域易于阅读(例如,如果您编写 JSON)或更高效(如果您使用另一个占用更少空间的序列化程序)。

    array of array 的类型可以使用[][] 语法。例如,字符串数组的数组将是:

    String [][] arrayOfStringArrays;
    

    我希望这会有所帮助。

    【讨论】:

    猜你喜欢
    • 2020-06-21
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多