[
https://issues.apache.org/jira/browse/SANDBOX-406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13222279#comment-13222279
]
Emmanuel Bourg commented on SANDBOX-406:
----------------------------------------
Thank you for the report Edgar. This issue seems specific to the SOLR version
of Commons CSV, I ran this test on the current version of Commons CSV on the
trunk and it worked fine:
{code}
StringReader input = new StringReader("# Comment 1\na,b,c\n# Comment 2");
CSVFormat format = CSVFormat.DEFAULT.withCommentStart('#');
for (String[] line : new CSVParser(input, format)) {
System.out.println("Line: " + Arrays.toString(line));
}
{code}
Could you do another test with this artefact instead? This is a more recent
version, you'll have to change your code slightly, the CSVStrategy class has
been renamed to CSVFormat.
{code}
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-csv</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
{code}
This artifact is located in the Apache snapshot repository at
http://repository.apache.org/snapshots
> CSV Parser loops inifinitely if last line starts with a comment char
> --------------------------------------------------------------------
>
> Key: SANDBOX-406
> URL: https://issues.apache.org/jira/browse/SANDBOX-406
> Project: Commons Sandbox
> Issue Type: Bug
> Components: CSV
> Reporter: Edgar Philipp
>
> Behaviour:
> Whenever the last non-empty line of the CSV file starts with a comment, the
> CSVParser loops infinitely!
> Examplary CSV file:
> {code}
> some
> # comment OK
> line
> # comment OK
> value
> # problematic comment
> {code}
> Excerpt of Java code:
> {code:java}
> private static final char COMMENT = '#';
> private static final char QUOTE = '"';
> private static final char SEPARATOR = ';';
> CSVStrategy csvStrategy = new CSVStrategy(SEPARATOR, QUOTE, COMMENT);
> CSVParser parser = new CSVParser(reader, csvStrategy);
> String[] line = parser.getLine();
> while (line != null) {
> Log.debug("Line: " + line[0]);
> // Do something
> line = parser.getLine();
> }
> {code}
> Used Maven Dependency:
> {code:xml}
> <dependency>
> <groupId>org.apache.solr</groupId>
> <artifactId>solr-commons-csv</artifactId>
> <version>1.4.0</version>
> </dependency>
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira