Package ucar.nc2.util
Class TableParser
java.lang.Object
ucar.nc2.util.TableParser
Deprecated.
move in ver6
Utility class to read and parse a fixed length table.
Each line of the table becomes a "Record". Each Record has a set of Fields described by the format string.
List<TableParser.Record> recs = TableParser.readTable(is, "3,15,46,54,60d,67d,73d", 50000);
for (TableParser.Record record : recs) {
Station s = new Station();
s.id = "K" + record.get(0);
s.name = record.get(2) + " " + record.get(3);
s.lat = (Double) record.get(4) * .01;
s.lon = (Double) record.get(5) * .01;
s.elev = (Double) record.get(6);
stationTableHash.put(s.id, s);
if (showStations) System.out.println(" station= " + s);
}
Example Table:
TLX 000001 OKLAHOMA_CITY/Norman OK US 3532 -9727 370 0 NWS
AMA 000313 AMARILLO/Amarillo TX US 3523 -10170 1093 0 NWS
HGX 000378 HOUSTON/GALVESTON/Dickinson TX US 2947 -9507 5 0 NWS
MLB 000302 MELBOURNE/Melbourne FL US 2810 -8065 11 0 NWS
format:
"3,15,54,60d,67d,73d"
grammer:
format = {field,}
field = endPos type
endPos = ending pos in the line, 0 based, exclusive, ie [start, end)
type = i=integer, d=double, L=long else String
field[0] goes from [0, endPos[0])
field[i] goes from [endPos[i-1] to endPos[i])
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDeprecated.will move in ver6.static classDeprecated.will move in ver6.static classDeprecated.will move in ver6.static interfaceDeprecated.will move in ver6. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDerivedField(TableParser.Field from, TableParser.Transform transform, Class type) Deprecated.getField(int fldno) Deprecated.intDeprecated.readAllRecords(InputStream ios, int maxLines) Deprecated.static List<TableParser.Record>readTable(InputStream ios, String format, int maxLines) Deprecated.Reads an input stream, containing lines of ascii in fixed width format.static List<TableParser.Record>Deprecated.Reads a URL or file in as a table.voidsetComment(String comment) Deprecated.
-
Constructor Details
-
TableParser
Deprecated.- Throws:
NumberFormatException
-
-
Method Details
-
readTable
public static List<TableParser.Record> readTable(String urlString, String format, int maxLines) throws IOException, NumberFormatException Deprecated.Reads a URL or file in as a table.- Parameters:
urlString- starts with http, read URL contenets, else read file.format- describe format of each line.maxLines- maximum number of lines to parse, set to < 0 to read all- Returns:
- List of TableParser.Record
- Throws:
IOException- on read errorNumberFormatException- on parse number error- See Also:
-
readTable
public static List<TableParser.Record> readTable(InputStream ios, String format, int maxLines) throws IOException, NumberFormatException Deprecated.Reads an input stream, containing lines of ascii in fixed width format. Breaks each line into a set of Fields (space or comma delimited) which may be String, integer or double.- Parameters:
ios- the input stream, will be closedformat- describe format of each line.maxLines- maximum number of lines to parse, set to < 0 to read all- Returns:
- List of TableParser.Record
- Throws:
IOException- on read errorNumberFormatException- on parse number error
-
setComment
Deprecated. -
readAllRecords
public List<TableParser.Record> readAllRecords(InputStream ios, int maxLines) throws IOException, NumberFormatException Deprecated.- Throws:
IOExceptionNumberFormatException
-
getField
Deprecated. -
getNumberOfFields
public int getNumberOfFields()Deprecated. -
addDerivedField
public TableParser.DerivedField addDerivedField(TableParser.Field from, TableParser.Transform transform, Class type) Deprecated.
-