You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Sergei Lebedev (JIRA)" <ji...@apache.org> on 2014/09/01 11:03:20 UTC

[jira] [Created] (CSV-130) CSVFormat#withHeader doesn't work well with #printComment

Sergei Lebedev created CSV-130:
----------------------------------

             Summary: CSVFormat#withHeader doesn't work well with #printComment
                 Key: CSV-130
                 URL: https://issues.apache.org/jira/browse/CSV-130
             Project: Commons CSV
          Issue Type: Improvement
          Components: Printer
    Affects Versions: 1.0
            Reporter: Sergei Lebedev
            Priority: Minor


For some applications it might be useful to add a top comment to the CSV file being printed. However, this isn't possible with #120 implemented the way it is. Here's an example:

{code}
public class Example {
  public static void main(final String[] args) throws IOException {
    final CSVPrinter csvPrinter = CSVFormat.TDF
        .withCommentMarker('#')
        .withHeader("foo", "bar")
        .print(System.out);

    csvPrinter.printComment("generated by yada v1.0");
    csvPrinter.printComment("foo  some description");
    csvPrinter.printComment("bar  more here");
    csvPrinter.printRecord(42, 24);
    csvPrinter.printRecord(24, 42);
  }
}

// Outputs:
// foo	bar
// # generated by yada v1.0
// # foo  some description
// # bar  more here
// 42	24
// 24	42
{code}

Obviously, there's a way to "fix" this: output the header in the first call to `#printRecord`, but it just doesn't feel right. What to do you think?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)