package nl.wldelft.fews.system.plugin.dataImport; import nl.wldelft.util.io.LineReader; import nl.wldelft.util.io.TextParser; import nl.wldelft.util.timeseries.DefaultTimeSeriesHeader; import nl.wldelft.util.timeseries.TimeSeriesContentHandler; /** * Imports KNMI IRIS files. * * File format (comma separated): * * id, location name, x-coor, y-coor, date, value * */ public class KnmiIrisTimeSeriesParser implements TextParser<TimeSeriesContentHandler> { @Override public void parse(LineReader reader, String virtualFileName, TimeSeriesContentHandler contentHandler) throws Exception { DefaultTimeSeriesHeader header = new DefaultTimeSeriesHeader(); for (String[] buffer = new String[6]; reader.readLine(',', buffer) != -1;) { header.setLocationId(buffer[0]); header.setParameterId(buffer[0]); contentHandler.setTimeSeriesHeader(header); contentHandler.setTime(contentHandler.getDefaultTimeZone(), "yyyyMMdd", buffer[4]); contentHandler.setValue('.', buffer[5]); contentHandler.applyCurrentFields(); } } }