我正在使用eclipse
和yosemite
处理java中的日期,然后当我尝试将一个简单的字符串解析为Date但不起作用时,这就是我的简单示例
String fecha = "2015-06-14";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try {
df.parse(fecha).getTime();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我遇到以下问题:
java.text.ParseException: Unparseable date: "2015-06-14"
at java.text.DateFormat.parse(DateFormat.java:357)
at Main.main(Main.java:16)
我在linux
品尝了这段代码并且有效,我不知道我做错了什么?
我使用的是java 1.7,因为它被重新获得了一个项目
java version "1.7.0_80-ea"
Java(TM) SE Runtime Environment (build 1.7.0_80-ea-b05)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b07, mixed mode)
这是我的时区
sun.util.calendar.ZoneInfo[id="America/Bogota",offset=-18000000,dstSavings=0,useDaylight=false,transitions=5,lastRule=null]
Tue May 19 12:22:39 COT 2015
我使用以下内容检查隐藏的字符:
System.out.println(Arrays.toString(fecha.getBytes(StandardCharsets.UTF_16BE)))
[0, 0, 0, 50, 0, 0, 0, 48, 0, 0, 0, 49, 0, 0, 0, 53, 0, 0, 0, 45, 0, 0, 0, 48, 0, 0, 0, 54, 0, 0, 0, 45, 0, 0, 0, 49, 0, 0, 0, 53, 0, 0]
如何正确解析CSV
我使用以下内容阅读csv file
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line = "";
String cvsSplitBy = "\t";
try {
int counter = 0 ;
while ((line = br.readLine()) != null) {
if( line.length() > 1 ){
String[] urvLine = line.split(cvsSplitBy);
String fecha = String.valueOf( urvLine[0] );
String value = String.valueOf( urvLine[1] );
log.debug( Arrays.toString(fecha.getBytes(StandardCharsets.UTF_16BE)) );
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}