【发布时间】:2021-12-12 02:13:13
【问题描述】:
fun getFormatFromISO(iso: String, pattern: String): String {
var res: String? = ""
val formatter = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ENGLISH)
formatter.timeZone= TimeZone.getTimeZone("UTC")
return try {
val date = formatter.parse(iso)
val timeFormat = SimpleDateFormat(pattern, Locale.getDefault())
timeFormat.timeZone= TimeZone.getDefault() // to convert to devices timezone
res=timeFormat.format(date)
res
} catch (var6: ParseException) {
"ERR"
}
}
我正在尝试将 Api 的响应变量更改为当前设备的时间戳,以便将其用作一些“textview.text”。使用“TimeZone.getDefault()”的部分,假设将UTC时区更改为设备时区。但它没有改变,而是解析UTC转换时间。
在参数'pattern'中传递“H”、“mm”,在参数'iso'中传递类似“2021-10-26T07:22:37Z”的东西
结果是:
日期值为“美国东部时间 10 月 26 日星期二 06:27:18” 资源是 06 ||分辨率为 27
要求的结果是 res 值在设备的时区中。
【问题讨论】:
标签: android datetime timezone simpledateformat timestamp-with-timezone