forked from TrPlugins/TrMenu
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTime.kt
33 lines (26 loc) · 858 Bytes
/
Time.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package trplugins.menu.util
import java.text.SimpleDateFormat
import java.time.Duration
import java.util.*
/**
* @author Arasple
* @date 2021/2/4 10:58
*/
object Time {
private val dateFormat = SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
val formatDate: () -> String = { dateFormat.format(System.currentTimeMillis()) }
/**
* @author Bkm016
*/
fun parseDuration(string: String): Duration {
var dur = string.uppercase(Locale.ENGLISH)
if (!dur.contains("T")) {
if (dur.contains("D")) {
if (dur.contains("H") || dur.contains("M") || dur.contains("S")) dur = dur.replace("D", "DT")
} else if (dur.startsWith("P")) dur = "PT" + dur.substring(1)
else dur = "T$dur"
}
if (!dur.startsWith("P")) dur = "P$dur"
return Duration.parse(dur)
}
}