如何将string [] temp转换为Timestamp:
String[] temp = line.split(",");
for (int i = 1; i < temp.length; i++) {
objekt.setTimestamp(timestamp);}
如果我使用
Timestamp ts= Timestamp.valueOf(temp[0]);
objekt.setTimestamp(ts);}
我收到此异常Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]
如果我使用这个
SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy hh:mm:ss");
java.util.Date parsedDate = dateFormat.parse(temp[0]);
java.sql.Timestamp timestamp = new java.sql.Timestamp(parsedDate.getTime());
我明白了
&#34; java.text.ParseException:Unparseable date:&#34; 06/11/2013 22:00&#34;
谢谢大家的建议,我可以阅读时间戳,但我必须阅读这个格式的月 - 日 - 年:06/18/2013 21:00:00,并使用SimpleDateFormat dateFormat = new SimpleDateFormat(&#34; MM / dd / yyyy HH:mm&#34;);我得到2013-06-18 18:00:00,如果我改变MM或dd或yyyy hier&#34; MM / dd / yyyy HH:mm&#34;我甚至无法获得月份,然后是日期和年份
答案 0 :(得分:3)
您的日期格式必须与提供的文字实际匹配。 '/'
和'-'
不匹配。
对于您提供的字符串,格式可能为"MM/dd/yyyy HH:mm"
。
它也可以是"dd/MM/yyyy HH:mm"
,因为目前尚不清楚该日期是June 11 or November 6
。
答案 1 :(得分:2)
使用以下代码:
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm");
假设字符串Unparseable date: "06/11/2013 22:00"
中的06与月份相对应
答案 2 :(得分:2)
在您获得java.text.ParseException: Unparseable date: "06/11/2013 22:00
的第二个代码块上,由于SimpleDateFormat
为String
,您的"06/11/2013 22:00"
模式错误,因此您必须使用模式:
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm");
有关详细信息,请参阅java.text.SimpleDateFormat
答案 3 :(得分:1)
您可以这样做:
Timestamp ts= null;
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
String[] temp = {..,..}; // it's string time array
for (int i = 1; i < temp.length; i++) {
Date convertedDate = dateFormat.parse(temp[i]);
ts = new Timestamp(convertedDate.getTime());
System.out.println(ts);
}