显示24小时格式时间?

时间:2014-07-25 19:07:38

标签: java android

在Android应用程序中,我有一个内部日志记录方法,我在每条消息的开头添加一个时间日期戳。 。 。

public void logEvent(String sMsg)  {
        String delegate = "MM/dd/yy hh:mm:ss"; 
        java.util.Date noteTS = Calendar.getInstance().getTime();
        String sTod = " " + DateFormat.format(delegate,noteTS);
        sMsg = sTod + "   " + sMsg;
        logEvents.add(sMsg); 
 . . . 

这会产生一个时间日期戳,看起来像" 07/25/14 02:58:18"。但我希望时间是24小时格式,即" 14:58:18"。

在一些使用" HH"而不是" hh"所以我试过了,即

   String delegate = "MM/dd/yy HH:mm:ss";

......但那只是给了我" 07/25/14 HH:58:18"

那么我需要做些什么才能让时间以24小时格式显示?

3 个答案:

答案 0 :(得分:2)

使用SimpleDateFormat而不是DateFormat。请参阅SimpleDateFormat Javadoc API:http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

H   Hour in day (0-23)  Number  0

" MM / dd / yy HH:mm:ss"应该使用SimpleDateFormat。

    SimpleDateFormat formatter = new SimpleDateFormat("MM/dd/yy HH:mm:ss");
    java.util.Date noteTS = Calendar.getInstance().getTime();
    String sTod = formatter.format(noteTS);

答案 1 :(得分:1)

试试这个:

private final SimpleDateFormat sdfTime = new SimpleDateFormat("kk:mm");

...
TEXTVIEW.setTitle(sdfTime.format(new Date()));

http://developer.android.com/reference/java/text/SimpleDateFormat.html

答案 2 :(得分:0)

你可以使用非常简单的课程。

试试这个:

Time time=new Time();

time.setToNow();

textview.setText(time.hour+":"+time.minute);

希望对你有用。:)