如何在java中解析这种日期时间到sql datetime?

时间:2015-08-20 08:07:10

标签: java parsing datetime twitter

我正试图以json格式从twitter获取推文信息。并将它们存储到数据库中,但问题是twitter的日期格式。我把日期作为字符串

String time = ((JSONObject)array.get(i)).get("created_at").toString();

打印

 Mon Aug 10 07:34:06 +0000 2015 
例如,

。但当然我无法将这种格式存储到数据库中,如何将其转换为java中的Mysql日期时间? 任何帮助表示赞赏

3 个答案:

答案 0 :(得分:2)

获取字符串:

String time = "Mon Aug 10 07:34:06 +0000 2015";

创建DateFormat以解析此String

DateFormat df = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");

解析字符串(ParseException可能会被抛出)

DateTime date = df.parse(time);

<强>更新: 为了store in MySql格式DateTime,我使用了Java Timestamp

// get the date
Date date = (Date)((JSONObject)array.get(i)).get("created_at");
// convert to timestamp
Timestamp ts = new Timestamp(date.getTime());

您可以将其发送到数据库后继续。

答案 1 :(得分:0)

您可以使用DateFormat.parse(String s)

Java Doc

答案 2 :(得分:0)

谢谢你们,我解决了我的问题;

&#13;
&#13;
String time = ((JSONObject)array.get(i)).get("created_at").toString();
java.util.Date date = new Date(time);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String format = formatter.format(date);
System.out.println(format);
&#13;
&#13;
&#13;