将秒转换为一天中的时间
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将秒转换为一天中的时间相关的知识,希望对你有一定的参考价值。
我在ios上有一个应用程序,我正在移植到android。我在处理时间方面遇到了问题。
在iOS上我使用以下方式存储时间点:
Int(NSDate().timeIntervalSince1970-0.5)
并使用以下方法将其转换为HH:MM:SS:
private let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "HH:mm:ss"
return dateFormatter.string(from: Date(timeIntervalSince1970: value))
在Android(Kotlin)上存储我使用的时间点:System.currentTimeMillis()/1000
转换:
LocalTime.MIN.plus(Duration.ofSeconds(xVal)).toString())
问题是转换后的值是提前6小时(可能或多或少,但我只看HH:MM:SS)。据我所知,我在android上获得时间的方式是正确的,我认为问题出在我转换它的时候。我已经四处寻找更多的方法来转换时间,从一个时间间隔到一天中的时间,但我无法让它工作。大多数帖子只是将秒数转换为HH:MM:SS,所以这些都是不可能的。相当于我的iOS代码的是什么?
编辑我也试过使用这种方法转换它仍然是6小时,即使我给它一个时区:
val cal = Calendar.getInstance()
cal.timeInMillis = xVal * 1000L
cal.timeZone = TimeZone.getTimeZone(TimeZone.getDefault().displayName)
Log.i("This is the cal value",cal.get(Calendar.HOUR_OF_DAY).toString())
答案
val sdf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH);
val date = sdf.format(Date(alarm.getNextTrigger()));
以上是关于将秒转换为一天中的时间的主要内容,如果未能解决你的问题,请参考以下文章
SQL:是不是可以将 dd-mon-yy 转换为一天中的某个时间?