Author: bpoussin Date: 2014-07-22 22:02:09 +0200 (Tue, 22 Jul 2014) New Revision: 4055 Url: http://forge.codelutin.com/projects/isis-fish/repository/revisions/4055 Log: change mark size to 2, 1 doesn't work when file is created under windows (when EOF is reached mark fail with 1) Modified: trunk/src/main/java/fr/ifremer/isisfish/util/SimpleParser.java Modified: trunk/src/main/java/fr/ifremer/isisfish/util/SimpleParser.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/util/SimpleParser.java 2014-07-22 19:54:22 UTC (rev 4054) +++ trunk/src/main/java/fr/ifremer/isisfish/util/SimpleParser.java 2014-07-22 20:02:09 UTC (rev 4055) @@ -43,6 +43,9 @@ /** to use log facility, just put in your code: log.info(\"...\"); */ static private Log log = LogFactory.getLog(SimpleParser.class); + // MARK_SIZE = 1 doesn't work when EOF is reached + static final private int MARK_SIZE = 2; + protected boolean intern; protected BufferedReader in; protected StringBuilder sb = new StringBuilder(); @@ -83,7 +86,7 @@ char c = (char)i; if (c == '\r') { // try to eat \n after \r - in.mark(1); + in.mark(MARK_SIZE); c = (char)in.read(); if (c != '\n') { in.reset(); @@ -102,7 +105,7 @@ if (i != -1) { // test if not eof - in.mark(1); + in.mark(MARK_SIZE); i = in.read(); in.reset(); }