private int onQuoted(int c) throws IOException { int state; switch (c) { case '"': state = STATE_NEST_QUOTE; break; case '\r': state = STATE_QUOTED_SAW_CR; emit(c); break; case '\n': state = STATE_QUOTED; if (allowLineBreakInValue == false) { exceptionStatus = createStatusInDecode(Reason.UNEXPECTED_LINE_BREAK, CHAR_DOUBLE_QUOTE, CHAR_LF); } currentPhysicalLine++; emit(c); break; case EOF: // invalid state state = STATE_FINAL; addSeparator(); exceptionStatus = createStatusInDecode(Reason.UNEXPECTED_EOF, CHAR_DOUBLE_QUOTE, CHAR_END_OF_FILE); break; default: state = STATE_QUOTED; emit(c); } return state; }
private int onQuotedSawCr(int c) throws IOException { int state; currentPhysicalLine++; switch (c) { case '"': state = STATE_NEST_QUOTE; break; case '\r': state = STATE_QUOTED_SAW_CR; emit(c); break; case '\n': state = STATE_QUOTED; if (allowLineBreakInValue == false) { exceptionStatus = createStatusInDecode(Reason.UNEXPECTED_LINE_BREAK, CHAR_DOUBLE_QUOTE, CHAR_LF); } emit(c); break; case EOF: // invalid state state = STATE_FINAL; addSeparator(); exceptionStatus = createStatusInDecode(Reason.UNEXPECTED_EOF, CHAR_DOUBLE_QUOTE, CHAR_END_OF_FILE); break; default: state = STATE_QUOTED; emit(c); } return state; }
} else { state = STATE_CELL_BODY; warn(createStatusInDecode(Reason.CHARACTER_AFTER_QUOTE, CHAR_END_OF_CELL, String.valueOf(c))); emit(c);