0
我輸入文件讀取:水槽攔截忽略輸入CSV文件頭,而讀
Name,Age,Date
abc,26,2016-12-16 00:00:01
pqr,25,2016-12-17 12:00:00
我的輸出文件是:
Name,Age,Date
ABC,26,2016-12-16 05:30:01
PQR,25,2016-12-17 17:30:00
我使用這樣的文件轉換和輸出文件移動水槽攔截。
我寫下面的邏輯。但有一個明顯的例外"Cannot parse Date".
基本上,我不得不忽略輸入文件頭,例如Name,Age,Date
。如何用我下面的代碼
SimpleDateFormat a = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date =new Date();
String line = new String(startEventBody);
String[] token = line.split(",");
date=a.parse(token[2]);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.HOUR_OF_DAY, 5);
cal.add(Calendar.MINUTE, 30);
String b = a.format(cal.getTime()).toString();
token[0] = token[0].toUpperCase();
token[2]=token[2].replace(token[2], b);
String newLine = "";
for (String s : token) {
newLine += s + ",";
}
newLine = newLine.replaceAll("\\r\\n|\\r|\\n", "");
this.outputStream = new ByteArrayOutputStream(newLine.getBytes().length);
this.outputStream.write(newLine.getBytes());
return this.outputStream.toByteArray();
完美。非常感謝... – earl