当前位置: 首页 > 知识库问答 >
问题:

mm:ss:SSS类型的字符串到LocalTime Kotlin/Java

夹谷浩宕
2023-03-14

我有一个时间字符串03:02:111,它的模式是mm:ss:SSS。我想将其转换为LocalTime对象。

嗯-

党卫军-

SSS-

简单的例子:

val time = "03:02:111"
val formatter = DateTimeFormatter.ofPattern("mm:ss:SSS")
val convertedTime = LocalTime.parse(time, formatter)
print(convertedTime.toString())

我得到以下例外:

java.time.format.DateTimeParseException:无法解析文本'03:02:111':无法从临时访问器获取LocalTime:{MicroOf秒钟=111000,MilliOf秒钟=111,NanoOf秒钟=111000000,秒分钟=2,分钟小时=3},ISO类型java.time.format.解析

有人能解释为什么这不起作用吗?我还检查了两次图案。

共有1个答案

微生俊材
2023-03-14

问题是你没有时间的定义。这意味着您必须构建一个更智能的格式化程序,告诉它默认的时间:

fun main(args: Array<String>) {
    val time = "03:02:111"
    val formatter = DateTimeFormatterBuilder()
        .appendPattern("mm:ss:SSS")
        .parseDefaulting(ChronoField.HOUR_OF_DAY, 0)
        .toFormatter()
    val convertedTime = LocalTime.parse(time, formatter)
    print(convertedTime.toString())
}

当然,这只在分钟数小于60分钟时有效。如果你没有这个保证,那么你需要另一种方法。

 类似资料:
  • 我想把字符串xml转换成对象类型类。因为我有一个返回对象类型的rest服务。因为我需要根据响应字符串将响应作为动态创建的xml返回。但是,当我试图将字符串xml转换为对象类时,它显示了以下错误: UnmarshalException:意外元素

  • 这章我们来着重介绍一下字符串。 刚刚学习Rust的同学可能会被Rust的字符串搞混掉,比如str,String, OsStr, CStr,CString等等…… 事实上,如果你不做FFI的话,常用的字符串类型就只有前两种。我们就来着重研究一下Rust的前两种字符串。 你要明白的是,Rust中的字符串实际上是被编码成UTF-8的一个字节数组。这么说比较拗口,简单来说,Rust字符串内部存储的是一个u

  • 主要内容:CHAR 和 VARCHAR 类型,TEXT 类型,ENUM 类型,SET 类型字符串类型用来存储字符串数据,还可以存储图片和声音的二进制数据。字符串可以区分或者不区分大小写的串比较,还可以进行正则表达式的匹配查找。 MySQL 中的字符串类型有 CHAR、 VARCHAR、 TINYTEXT、 TEXT、 MEDIUMTEXT、 LONGTEXT、 ENUM、 SET 等。 下表中列出了 MySQL 中的字符串数据类型,括号中的 表示可以为其指定长度。 类型名称 说明 存储

  • redis 字符串类型

  • 对于Java/general中有关此概念的任何好的参考资料,我们将不胜感激。

  • 问题内容: 最近,我试图用Python存储和读取文件中的信息,但遇到一个小问题:我想从文本文件中读取类型信息。从字符串到int或float的类型转换非常有效,但是从字符串到类型的类型转换似乎是另一个问题。自然,我尝试过这样的事情: 但是,它并不用作强制类型转换,而是用作查找变量类型的机制,实际上它在这里。 我找到了一种解决方法: 但我一般尽量避免类似的功能/报表或在那里我可以。所以我的问题是:是否