在Android中解析String to Date错误

时间:2014-06-28 04:22:00

标签: java android parsing date datetime

我在Android中面临一些日期解析错误。我实际上希望日期格式为yyyy-MM-ddThh:mm:ss(2014-08-12T00:00:00)。

我以两种方式进行了解析,一种是使用当前日期并使用日期选择器。

a)使用当前日期:

String d = DateFormat.getDateTimeInstance().format(new Date()).toString();

此处,“d”的值是Jun28,2014 12:17:30 AM 我尝试使用SimpleDateFormatter来解析它(yyyy-MM-dd),但它没有用。错误是无法解析String。

b)使用日期选择器,我能够将日期默认为dd / MM / yyyy。我能够解析为yyyy-MM-dd。但是,如果日期或月份是一位数字,则需要d / M / yyyy。

如何将日期作为yyyy-MM-ddThh:mm:ss?

4 个答案:

答案 0 :(得分:2)

这是我用于插入数据库的一些代码

protected String formatDate(Date date){
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
        return dateFormat.format(date);
}

答案 1 :(得分:1)

试试这个..

String dd = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss").format(new Date())

答案 2 :(得分:1)

您可以通过指定创建SimpleDateFormat时格式化输出的方式,以几乎任何形式获取日期。你添加" T"用单引号括起来,如下:

String formattedDate = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss").format(new Date());

要获得方便的简单日期格式参考,请查看此页面:http://developer.android.com/reference/java/text/SimpleDateFormat.html

答案 3 :(得分:0)

 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss"); 
    String finalDate=dateFormat.format(new Date());