protected String[] readNext(LineNumberReader reader) throws IOException {
  String[] rowDef=null;
  do {
    String nextLine=reader.readLine();
    if (nextLine == null) {
      hasNext=false;
      return rowDef;
    }
    String[] r=parser.parseLineMulti(nextLine);
    if (r.length > 0) {
      if (rowDef == null) {
        rowDef=r;
      }
 else {
        String[] t=new String[rowDef.length + r.length];
        System.arraycopy(rowDef,0,t,0,rowDef.length);
        System.arraycopy(r,0,t,rowDef.length,r.length);
        rowDef=t;
      }
    }
  }
 while (parser.isPending());
  return rowDef;
}

protected String [ ] readNext ( LineNumberReader reader ) throws IOException { String [ ] rowDef = null ; do { String nextLine = reader . readLine ( ) ; if ( nextLine == null ) { hasNext = false ; return rowDef ; } String [ ] r = parser . parseLineMulti ( nextLine ) ; if ( r . length > 0 ) { if ( rowDef == null ) { rowDef = r ; } else { String [ ] t = new String [ rowDef . length + r . length ] ; System . arraycopy ( rowDef , 0 , t , 0 , rowDef . length ) ; System . arraycopy ( r , 0 , t , rowDef . length , r . length ) ; rowDef = t ; } } } while ( parser . isPending ( ) ) ; return rowDef ; }
load the next set of csv values from the file
