Something like....
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import com.infiniteautomation.datafilesource.contexts.AbstractCSVDataSource;
import com.infiniteautomation.datafilesource.dataimage.NumericImportPoint;
public class JergForumCsvQuestion extends AbstractCSVDataSource {
private boolean headersConsumed = false;
private SimpleDateFormat dtf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
@Override
public void importRow(String[] data, int rowNum) {
if(data.length == 0)
return;
Map<String, String> extraParams = new HashMap<>();
String[] rowData = data[0].split(";");
if(rowData.length < 7) //avoid index out of bounds
return;
try {
//subtract the timezone, or you could put it into the date formatter (or add the timezone,
//it's not always easy to know if they're saying those times are in UTC-5 or those times are UTC)
long time = dtf.parse(rowData[3]).getTime() - 5*60*60*1000;
this.parsedPoints.add(new NumericImportPoint("PV Solar kWh", Double.valueOf(rowData[5]), time, extraParams));
this.parsedPoints.add(new NumericImportPoint("PV Solar W/m^2", Double.valueOf(rowData[6]), time, extraParams));
} catch(Exception e) { System.out.println("Exception: " + e.getMessage()); }
}
}