使用整数创建日期并在文本框中显示

时间:2017-11-03 10:57:09

标签: java android date

我是Android Studio的新手并且遇到了问题 - 我正在尝试进行计算,我需要以整数格式显示当前日期和时间。我还需要当前的日期和时间,然后显示在TextBox

我已将日期声明为整数,如下所示:

public static int date1 = (int) (new Date().getTime()/1000);


datedisplay = (TextView) findViewById(R.id.date);

然后我试图将当前日期和时间显示在文本框中,但它没有显示。我只是想知道有人知道为什么吗?

   SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy HH:mm");
   System.out.println(new Date(new Date(date1).getTime()));
   datedisplay.setText(dateFormat.format(date1));

提前谢谢

4 个答案:

答案 0 :(得分:1)

在任何您想要String或Integer的数据类型中使用它。

java.util.Date date= new java.util.Date();
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(date.getTime());
datedisplay.setText(timeStamp);

答案 1 :(得分:0)

您还可以使用Calendar类:

Calendar myCalendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy HH:mm",Locale.getDefault());
String dateString = sdf.format(myCalendar.getTime());

然后

datedisplay.setText(dateString);

答案 2 :(得分:0)

new Date().getTime() ;如果您将其潜水1000,则返回长值

  

将long转换为int

如果你使用long,

会更好:

    long date1 = new Date().getTime() ;
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy HH:mm");
    Date dt = new Date(date1);
    datedisplay.setText(dateFormat.format(dt));

答案 3 :(得分:0)

如果您真的想使用int来存储日期表示,只需使用自纪元以来的天数而不是秒数

new Date().getTime() 
    /1000 //second
    /60   //minute
    /60   //hour
    /24;   //day

这将为您提供一个适合int一段时间的值。

但当然,如果你想要Time的{​​{1}}部分,你将无法获得精确的精确度,你将无法获得。{p>这只允许您获取Date Date

yyyy-MM-dd

}

  

Fri Nov 03 01:00:00 CET 2017

(小时是因为我当地人参加GMT + 1)