Java 写入超长字符串csv头

Java 写入超长字符串csv头,java,string,csv,Java,String,Csv,我必须写出一个CSV文件,标题有100个字段。 此时此刻,我正在一份 private static final String HEADER = "header1, header2, header3, ...., header100"; 它是有效的,但它非常凌乱,难以阅读 有没有更整洁的方式可以让我试试 更新 我想我会使用LinkedHashmap(键是columnID,值是header1,等等)来构建它。这样,如果需要,更新字段标题将更容易 清理代码的一个技巧是在自己的行中使用并指定每个元素,

我必须写出一个CSV文件,标题有100个字段。 此时此刻,我正在一份

private static final String HEADER = "header1, header2, header3, ...., header100";
它是有效的,但它非常凌乱,难以阅读

有没有更整洁的方式可以让我试试

更新

我想我会使用LinkedHashmap(键是columnID,值是header1,等等)来构建它。这样,如果需要,更新字段标题将更容易

清理代码的一个技巧是在自己的行中使用并指定每个元素,然后将它们连接在一起:

private static final String HEADER = Stream.of(
        "header1",
        "header2",
        "header3",
        // etc...
).collect(Collectors.joining(", "));
当然,如果您的标题实际上是“header1”、“header2”等,您可以直接从流生成它们:

private static final String HEADER =
        IntStream.rangeClosed(1, 100)
                 .mapToObj(i ->  "header" + i)
                 .collect(Collectors.joining(", "));

嗯,你可以使用com.google.common.base.Joiner,如果这对你来说不那么难看的话:

HEADER = Joiner.on(", ").join("header1", "header2")

你从哪里得到你的数据?header1,header2,….使用列表?为什么不使用标准Java API的String.join呢?