/** * 기본 생성자. 지정한 Row를 기본 입출력 구분자를 이용하여 처리하고 컬럼의 개수를 설정한다. * * @param row 컬럼의 개수 */ public CsvRowParser(String row) { setInputDelimiter(Constants.DEFAULT_DELIMITER); setOutputDelimiter(Constants.DEFAULT_DELIMITER); String[] columnsArray = StringUtils.splitPreserveAllTokens(row, this.inputDelimiter); columns = ArrayUtils.stringArrayToCollection(columnsArray); this.initSize = columnsArray.length; }
/** * Row를 파싱하여 컬럼을 구성한다. * * @param row Row */ public void parse(String row) { String[] strings = StringUtils.splitPreserveAllTokens(row, this.inputDelimiter); if (initSize == -1) { // Not initialized this.initSize = strings.length; } if (initSize != strings.length) { throw new IllegalArgumentException( "Wrong column size. Init Size [" + initSize + "] Column Size [" + strings.length + "]"); } clear(); columns = ArrayUtils.stringArrayToCollection(strings); this.row = row; }