Mercurial > dive4elements > river
diff flys-backend/src/main/java/de/intevation/flys/importer/parsers/LineParser.java @ 4193:f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 22 Oct 2012 09:02:26 +0200 |
parents | 3febaed762b8 |
children | 23392c25fc11 |
line wrap: on
line diff
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/LineParser.java Fri Oct 19 13:59:51 2012 +0200 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/LineParser.java Mon Oct 22 09:02:26 2012 +0200 @@ -2,6 +2,10 @@ import java.io.File; +import java.text.DateFormat; +import java.text.NumberFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Locale; @@ -26,7 +30,7 @@ public static final String SEPERATOR_CHAR = ";"; - protected abstract void handleLine(String line); + protected abstract void handleLine(int lineNum, String line); protected abstract void reset(); @@ -52,13 +56,15 @@ new InputStreamReader( new FileInputStream(file), ENCODING)); - String line = null; + String line = null; + int lineNum = 1; while ((line = in.readLine()) != null) { if ((line = line.trim()).length() == 0) { + lineNum++; continue; } - handleLine(line); + handleLine(lineNum++, line); } } finally { @@ -82,6 +88,20 @@ } } + public static double getDouble(String doubleString) throws ParseException { + NumberFormat nf = NumberFormat.getInstance(DEFAULT_LOCALE); + Number value = nf.parse(doubleString); + + return value.doubleValue(); + } + + public static Date getDate(String dateString) throws ParseException { + DateFormat df = SimpleDateFormat.getDateInstance( + SimpleDateFormat.MEDIUM, DEFAULT_LOCALE); + + return df.parse(dateString); + } + public static Date getDateFromYear(int year) { Calendar cal = Calendar.getInstance();