You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
Version 1
Next »
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;
import java.io.IOException;
/**
* Parser for Scottish and Southern Electric (SSE) gauged data
* column 1 : Location Id
* column 2 : Date/Time
* column 3 : Date (not used)
* column 4 : Value
*/
public class SseTimeSeriesParser implements TextParser<TimeSeriesContentHandler> {
@Override
public void parse(LineReader reader, String virtualFileName, TimeSeriesContentHandler contentHandler) throws IOException {
reader.setCommentLinePrefix('*');
DefaultTimeSeriesHeader timeSeriesHeader = new DefaultTimeSeriesHeader();
for (String[] buffer = new String[4]; reader.readLine(',', buffer) != -1;) {
timeSeriesHeader.setLocationId(buffer[0]);
contentHandler.setValue('.', buffer[1]);
contentHandler.setTime(contentHandler.getDefaultTimeZone(), "dd/MM/yyyy HH:mm:ss", buffer[2]);
timeSeriesHeader.setParameterId(buffer[3]);
timeSeriesHeader.setUnit(buffer[3]);
contentHandler.setTimeSeriesHeader(timeSeriesHeader);
contentHandler.applyCurrentFields();
}
}
}