如何将字符串类型保存到android SQLite datetime字段中

时间:2013-05-02 02:51:11

标签: android sqlite

我从Google博客供稿中得到以下字符串“2013-04-30T00:55:25.855-07:00”。我尝试将此字符串保存到SQLite日期时间字段,如下面的命令

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
initialValues.put(newsdatemodified, dateFormat.format(datemodified));

但是我发现数据无法插入到sqlite表中而且没有遇到任何错误。任何解决方案将不胜感激。

更新

当我尝试使用以下编码时

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
Date date1 = (Date) dateFormat.parse(entry.updated);

但是出现此错误

05-02 09:56:05.383: E/AndroidRuntime(31634): Caused by: java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date

2 个答案:

答案 0 :(得分:2)

您的格式错误,我需要yyyy-MM-dd'T'HH:mm:ss.SSSZ

你可以看到你的格式与传入的字符串格式不匹配

答案 1 :(得分:0)

似乎问题与格式有关。可能是,您可以尝试使用yyyy-MM-dd'T'HH:mm:ss.SSSZSSS代表小数秒,Z代表时区。

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

希望它有所帮助,请评论。您可以看到其他格式,并尝试通过查看here来解决这些问题。