java - java中使用SimpleDateFormat进行时间格式化

标签 java time-format

我的要求是以 hh:mm 格式在网页上显示日期。但是,如果它是一位数字,则在小时值之前不应显示零。

例如 - 应显示为:上午 11:30、上午 9:15、下午 1:00。

我试图解决这个问题,但这里唯一的问题是从 1 位数小时值中删除多余的 0。

输入时间的格式为 - hh:mm:ss

日期值最初是一个字符串。首先将其解析为以下格式的日期 -

final SimpleDateFormat dfParse = new SimpleDateFormat("HH:mm:ss");
startTimeFmt = dfParse.parse(startTime);

然后将其格式化为以下格式 -

final SimpleDateFormat dfFormat = new SimpleDateFormat("hh:mm a");
startTime = dfFormat.format(startTimeFmt);

最佳答案

试试这个:

Date date = new SimpleDateFormat("hh:mm:ss").parse("07:15:45");
String newDate = new SimpleDateFormat("h:mm a").format(date);

这将打印 7:15 AM

关于java - java中使用SimpleDateFormat进行时间格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26807839/

相关文章:

java - 当我删除 System.out.println 时,while 循环似乎不起作用

java - Java中时间格式转换为long变量

java - 使用 SimpleDateFormat,Java 的日期解析不正确

java - NullPointerException 使用 getWindowManager()

java - 如何使用局部变量注释进行 Wicket 授权?

java - 使用 rbac 服务主体进行身份验证会导致 403 受众验证失败。观众不匹配

java - Android 将日期格式从字符串更改为日期和时间分隔

go - 如何将 logrus 时间设置为 UTC

iphone - 根据不在设备设置上的应用程序设置,在 UIDatepicker 中以 12 和 24 小时格式显示时间