格式化日期时间后,时间以大写形式显示AM或PM,但我想要小写,如am或pm.
这是我的代码:
public class Timeis {
public static void main(String s[]) {
long ts = 1022895271767L;
String st = null;
st = new SimpleDateFormat(" MMM d 'at' hh:mm a").format(ts);
System.out.println("time is " + ts);
}
}
解决方法:
不幸的是,标准的格式化方法不允许你这样做.乔达也不是.我想你将不得不通过一个简单的post-format替换来处理你的格式化日期.
String str = oldstr.replace("AM", "am").replace("PM","pm");
你可以使用使用regepxs的replaceAll()方法,但我认为上面的内容可能就足够了.我没有做毯子toLowerCase(),因为如果你将来更改格式字符串以包含(比方说)月份名称或类似名称,那么这可能会搞砸格式化.
编辑:James Jithin’s solution看起来好多了,并采取正确的方法(如评论中所述)
标签:java,datetime,simpledateformat
来源: https://codeday.me/bug/20190917/1808731.html