2016-12-12 23:59:52正确转换为“2016年12月12日23:59:52 CST”
但以下不是
2016-12-13 0:31:13错误地转换为“星期四12月12日00:31:13 CST 2017”
这是我的编队
SimpleDateFormat formater = new SimpleDateFormat("yyyy-dd-MM HH:mm:ss");
我的小时缺少前导0,导致转换错误。如何使形成器与删除前导0的时间兼容,例如 2016-1-1 0:0:0
答案 0 :(得分:2)
我认为没有转换错误,与缺少前导0无关。你刚刚改变了你的编队中的日期和月份。只需改变
("yyyy-dd-MM HH:mm:ss") to ("yyyy-MM-dd HH:mm:ss")
答案 1 :(得分:1)
试试这个:
java.util.Date data = new java.util.Date();
SimpleDateFormat formater = new SimpleDateFormat("yyyy-dd-MM HH:mm:ss");
String dataString = formater.format(data);
dataString = dataString.replaceAll("-0", "-").replaceAll(":0", ":").replace(" 0", " ");
System.err.println("dataString = "+dataString);
答案 2 :(得分:1)
没有转换错误,与丢失前导0无关。你刚刚改变了你的编队中的日期和月份