java - 显示24小时格式的时间?

标签 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 小时格式?

最佳答案

使用 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);

关于java - 显示24小时格式的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24962868/

相关文章:

java - Intellij scala项目不支持swing

android - 保护应用程序数据

Android Studio 未在“运行”选项卡上显示任何日志

java - 在数据流运行程序中运行管道时有时会出现 IllegalStateException

android - 如何在不显示后面主要 Activity 的情况下启动android Activity

android - 如何使用 Retrofit2 将照片上传到服务器

android - 可以用相机测量到物体的距离吗?

java - equalsIgnoreCase() 与 toUpperCase().equals 和 toLowerCase().equals 的效率

java - Tomcat:何时使用 keepgenerated = false

java - Spring-boot Rest api页面调用