为什么我的约会时间不是当前的,而是显示1970年的约会?

时间:2015-09-30 06:18:15

标签: android

我的代码:

Date p_selected = new SimpleDateFormat("HH:mm", Locale.US)
                        .parse(String.valueOf(p_hour[0]) + ":" + String.valueOf(p_min[0]));
Log.d("ttt", "current_time = " + calender.getTime() + "user time = " + p_selected);

这是我的日志,其中当前时间是2015年,为什么用户时间为1970?

current_time = Wed Sep 30 11:35:43 GMT+05:30 2015  
user time = Thu Jan 01 11:02:00 GMT+05:30 1970.

我在这里缺少什么?

3 个答案:

答案 0 :(得分:0)

SimpleDateFormat中的“HH:mm”只解析小时和分钟,所以这两个匹配。如果添加“YYYY-MM-DD”(可能是dd而不是DD),您也应该获得日期。然后你当然也必须提供扩展的输入文本。

答案 1 :(得分:0)

试试这个,

第一种方式,

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
String currentDateandTime = sdf.format(new Date());
tv.setText(currentDateandTime);

第二种方式,

tvDisplayDate = (TextView) findViewById(R.id.tvDate);


    final Calendar c = Calendar.getInstance();
    yy = c.get(Calendar.YEAR);
    mm = c.get(Calendar.MONTH);
    dd = c.get(Calendar.DAY_OF_MONTH);

    // set current date into textview
    tvDisplayDate.setText(new StringBuilder()
    // Month is 0 based, just add 1
            .append(yy).append(" ").append("-").append(mm + 1).append("-")
            .append(dd));

答案 2 :(得分:0)

参与@ganapat和@arodriguez ..

最终代码是:

Calendar calender=Calendar.getInstance();
            int yy=calender.get(Calendar.YEAR);
            int mm=calender.get(Calendar.MONTH);
            int dd=calender.get(Calendar.DAY_OF_MONTH);

            String date_str=new StringBuilder().append(yy).append("/").append(mm+1).append("/").append(dd).append(" ").toString();

获取当前日期并将其传递给简单格式化程序。

Date p_selected=new SimpleDateFormat("yyyy/MM/dd HH:mm",Locale.US).parse(date_str+String.valueOf(p_hour[0])+":"+String.valueOf(p_min[0]));

现在我可以比较两次。

感谢帮助人员。