【问题标题】:Convert CSVwriter to inputstream将 CSVwriter 转换为输入流
【发布时间】:2016-09-15 21:13:20
【问题描述】:

我有以下代码,我想将对象列表写入我已定义属性和项目的 csv。我想将编写器转换为输入流,因此我读取了这些值并执行了一些计算。我还想将此 s3 文件存储在 Amazon S3 之类的数据存储中。

如何将编写器转换为输入流。我没有看到定义的 api。我可以像 CSVReader reader = new CSVReader(csvWriter) 那样读取文件吗?

 public CSVWriter convertModelToObject(List attributes, final Class classType) throws IOException {
    CSVWriter writer = new CSVWriter(new FileWriter("yourfile.csv"), com.opencsv.CSVParser.DEFAULT_SEPARATOR,
            com.opencsv.CSVParser.DEFAULT_QUOTE_CHARACTER);
    BeanToCsv bean = new BeanToCsv();
    HeaderColumnNameMappingStrategy<T> mappingStrategy = new HeaderColumnNameMappingStrategy<>();
    mappingStrategy.setType(classType);
    bean.write(mappingStrategy, writer, attributes);
    return writer;

【问题讨论】:

    标签: csv amazon-s3 opencsv


    【解决方案1】:

    考虑用 PipedWriter 替换您正在使用的 FileWriter,使用创建 CSVReader 时使用的 PipedReader 创建它。 You can find an example of the PipedReader Writer here.

    【讨论】:

      【解决方案2】:

      是的,你可以。

      解决方案是使用InputStreamReader 读取文件并将该流传递给缓冲读取器并逐行或根据需要读取。

      更多方法可以参考这里:https://www.geeksforgeeks.org/different-ways-reading-text-file-java/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-08-12
        • 2011-09-30
        • 2016-11-24
        • 2012-04-24
        • 2017-09-06
        • 2012-03-05
        • 2018-07-25
        相关资源
        最近更新 更多