Add method for detecting start of line
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/csv/trunk@1306321 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
6a91c05061
commit
93089b260c
|
@ -49,6 +49,13 @@ class CSVLexer extends Lexer {
|
|||
* is to call 'readAgain' on the stream...
|
||||
*/
|
||||
int c = in.read();
|
||||
|
||||
if ((lastChar == '\n' || lastChar == '\r' || lastChar == ExtendedBufferedReader.UNDEFINED) && isCommentStart(c)) {
|
||||
in.readLine();
|
||||
tkn.type = COMMENT;
|
||||
return tkn;
|
||||
}
|
||||
|
||||
boolean eol = isEndOfLine(c);
|
||||
c = in.readAgain();
|
||||
|
||||
|
@ -86,12 +93,8 @@ class CSVLexer extends Lexer {
|
|||
}
|
||||
}
|
||||
|
||||
// ok, start of token reached: comment, encapsulated, or token
|
||||
if (isCommentStart(c)) { // TODO should only match at start of line
|
||||
// ignore everything till end of line and continue (incr linecount)
|
||||
in.readLine();
|
||||
tkn.type = COMMENT;
|
||||
} else if (isDelimiter(c)) {
|
||||
// ok, start of token reached: encapsulated, or token
|
||||
if (isDelimiter(c)) {
|
||||
// empty token return TOKEN("")
|
||||
tkn.type = TOKEN;
|
||||
} else if (eol) {
|
||||
|
|
Loading…
Reference in New Issue