在以前的开发中,日期格式化一直使用的是SimpleDateFormat进行格式化。今天发现String.format也可以格式化。当 然,两种方式的优劣没有进行深入分析。
val date = Date()
//月,日,星期,AM/PM
//Fue 1 (Sat) pm
val fullDate = String.format("%tb %te일 (%ta) %tp", date, date, date, date)
println(fullDate)
//24小时制 17:02
var format = "%tH:%tM"
println(String.format("full 24 = $format", date, date))
//Android 系统是否是24小时格式还是12小时格式
// if (!DateFormat.is24HourFormat(this)) {
//12小时制 05:02 5:02
format = "%tI:%tM %tl:%tM "
// }
val time = String.format(format, date, date, date, date)
println(time)
- 日期格式化 (2018/5/13 周日 中文环境下测试)
转换符 说明 结果
%tb 指定语言环境下的月份简称 五月
%tB 指定语言环境下的月份全称 五月
%ta 指定语言环境下周几的简称 星期日
%tA 指定语言环境下周几的全称