From: <zep...@us...> - 2006-10-25 11:27:00
|
Revision: 120 http://svn.sourceforge.net/pzfilereader/?rev=120&view=rev Author: zepernick Date: 2006-10-25 04:26:56 -0700 (Wed, 25 Oct 2006) Log Message: ----------- added missing char version of constructor Modified Paths: -------------- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java Modified: trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java =================================================================== --- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-24 23:33:29 UTC (rev 119) +++ trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-25 11:26:56 UTC (rev 120) @@ -390,7 +390,38 @@ .charAt(0) : 0, ignoreFirstRecord, handleShortLines); } + /** + * Constructs a new DataSet using the PZMAP XML file layout method. This is + * used for a DELIMITED text file. esacpe sequence reference: \n newline + * <br> + * \t tab <br> + * \b backspace <br> + * \r return <br> + * \f form feed <br> \\ backslash <br> \' single quote <br> \" double quote + * + * @param pzmapXML - + * Reference to the xml file holding the pzmap + * @param dataSource - + * text file datasource to read from + * @param delimiter - + * Char the file is delimited By + * @param qualifier - + * Char text is qualified by + * @param ignoreFirstRecord - + * skips the first line that contains data in the file + * @param handleShortLines - + * Adds missing columns as empty's to the DataSet instead of + * logging them as an error + * @exception Exception + */ + public DataSet(final File pzmapXML, final File dataSource, final char delimiter, final char qualifier, + final boolean ignoreFirstRecord, final boolean handleShortLines) throws Exception { + this(ParserUtils.createInputStream(pzmapXML), ParserUtils.createInputStream(dataSource), delimiter, qualifier, + ignoreFirstRecord, handleShortLines); + } + + /** * New constructor based on InputStream. Constructs a new DataSet using the * PZMAP XML file layout method. This is used for a DELIMITED text file. * esacpe sequence reference: \n newline <br> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2006-10-26 08:58:13
|
Revision: 124 http://svn.sourceforge.net/pzfilereader/?rev=124&view=rev Author: benoitx Date: 2006-10-26 01:58:08 -0700 (Thu, 26 Oct 2006) Log Message: ----------- Removed System.out Modified Paths: -------------- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java Modified: trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java =================================================================== --- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-25 11:36:46 UTC (rev 123) +++ trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-26 08:58:08 UTC (rev 124) @@ -1124,7 +1124,6 @@ for (int i = 0; i < cmds.size(); i++) { column = (ColumnMetaData) cmds.get(i); array[i] = column.getColName(); - System.out.println(i + "/ Columns... " + column.getColName()); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2006-10-26 15:53:11
|
Revision: 128 http://svn.sourceforge.net/pzfilereader/?rev=128&view=rev Author: benoitx Date: 2006-10-26 08:53:08 -0700 (Thu, 26 Oct 2006) Log Message: ----------- Try to reduce the number of trimmings but Paul, could you check the comments //+ as I believe that those tests are redudant... Modified Paths: -------------- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java Modified: trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java =================================================================== --- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-26 15:51:35 UTC (rev 127) +++ trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-26 15:53:08 UTC (rev 128) @@ -740,7 +740,8 @@ while ((line = br.readLine()) != null) { lineCount++; /** empty line skip past it */ - if (!processingMultiLine && line.trim().length() == 0) { + String trimmed = line.trim(); + if (!processingMultiLine && trimmed.length() == 0) { continue; } @@ -759,7 +760,7 @@ // any line breaks in the middle of the record, this will only // be checked if we have specified a delimiter // ******************************************************** - final char[] chrArry = line.trim().toCharArray(); + final char[] chrArry = trimmed.toCharArray(); if (!processingMultiLine && delimiter > 0) { processingMultiLine = ParserUtils.isMultiLine(chrArry, delimiter, qualifier); } @@ -767,26 +768,25 @@ // check to see if we have reached the end of the linebreak in // the record - if (processingMultiLine && lineData.trim().length() > 0) { + final String trimmedLineData = lineData.trim(); + if (processingMultiLine && trimmedLineData.length() > 0) { // need to do one last check here. it is possible that the " // could be part of the data // excel will escape these with another quote; here is some // data "" This would indicate // there is more to the multiline - String trimmed = line.trim(); if (trimmed.charAt(trimmed.length() - 1) == qualifier && !trimmed.endsWith("" + qualifier + qualifier)) { // it is safe to assume we have reached the end of the // line break processingMultiLine = false; - if (lineData.trim().length() > 0) { + if (trimmedLineData.length() > 0) { //+ would always be true surely.... lineData += "\r\n"; } lineData += line; } else { - // check to see if this is the last line of the record // looking for a qualifier followed by a delimiter - if (lineData.trim().length() > 0) { + if (trimmedLineData.length() > 0) { //+ here again, this should always be true... lineData += "\r\n"; } lineData += line; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zep...@us...> - 2006-10-27 00:23:29
|
Revision: 135 http://svn.sourceforge.net/pzfilereader/?rev=135&view=rev Author: zepernick Date: 2006-10-26 17:23:25 -0700 (Thu, 26 Oct 2006) Log Message: ----------- moved parse to FixedWidthParserUtils Modified Paths: -------------- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java Modified: trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java =================================================================== --- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-27 00:22:50 UTC (rev 134) +++ trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-10-27 00:23:25 UTC (rev 135) @@ -37,6 +37,7 @@ import net.sf.pzfilereader.structure.ColumnMetaData; import net.sf.pzfilereader.structure.Row; import net.sf.pzfilereader.util.ExcelTransformer; +import net.sf.pzfilereader.util.FixedWidthParserUtils; import net.sf.pzfilereader.util.PZConstants; import net.sf.pzfilereader.util.ParserUtils; import net.sf.pzfilereader.xml.PZMapParser; @@ -653,7 +654,7 @@ continue; } - final String mdkey = ParserUtils.getCMDKeyForFixedLengthFile(columnMD, line); + final String mdkey = FixedWidthParserUtils.getCMDKey(columnMD, line); final int recordLength = ((Integer) recordLengths.get(mdkey)).intValue(); // Incorrect record length on line log the error. Line will not @@ -676,19 +677,20 @@ } } - int recPosition = 1; + //int recPosition = 1; final Row row = new Row(); row.setMdkey(mdkey.equals(PZConstants.DETAIL_ID) ? null : mdkey); // try final List cmds = ParserUtils.getColumnMetaData(mdkey, columnMD); + row.addColumn(FixedWidthParserUtils.splitFixedText(cmds, line)); // to limit the memory use // Build the columns for the row - for (int i = 0; i < cmds.size(); i++) { - final String tempValue = line.substring(recPosition - 1, recPosition - + (((ColumnMetaData) cmds.get(i)).getColLength() - 1)); - recPosition += ((ColumnMetaData) cmds.get(i)).getColLength(); - row.addColumn(tempValue.trim()); - } + //for (int i = 0; i < cmds.size(); i++) { + // final String tempValue = line.substring(recPosition - 1, recPosition + // + (((ColumnMetaData) cmds.get(i)).getColLength() - 1)); + // recPosition += ((ColumnMetaData) cmds.get(i)).getColLength(); + // row.addColumn(tempValue.trim()); + // } row.setRowNumber(lineCount); // add the row to the array rows.add(row); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <zep...@us...> - 2006-12-15 13:16:18
|
Revision: 216 http://svn.sourceforge.net/pzfilereader/?rev=216&view=rev Author: zepernick Date: 2006-12-15 05:16:19 -0800 (Fri, 15 Dec 2006) Log Message: ----------- removed the getRows() so the user cannot manipulate the internal structure of the DataSet Modified Paths: -------------- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java Modified: trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java =================================================================== --- trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-12-15 02:07:56 UTC (rev 215) +++ trunk/PZFileReader/src/main/java/net/sf/pzfilereader/DataSet.java 2006-12-15 13:16:19 UTC (rev 216) @@ -231,7 +231,6 @@ */ void orderRows(final OrderBy ob) throws Exception; - List getRows(); /** * Sets data in the DataSet to lowercase This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |