首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kotlin - SimpleDateFormat解析需要无限的时间。

Kotlin - SimpleDateFormat解析需要无限的时间。
EN

Stack Overflow用户
提问于 2019-06-20 03:53:26
回答 4查看 12.4K关注 0票数 3

我试图用SimpleDateFormat解析日期字符串,它从不停止,也不会出现任何异常。请看下面的代码,

代码语言:javascript
运行
复制
fun getDate(dateStr: String) {

    try {
        /** DEBUG dateStr = '2006-04-16T04:00:00Z' **/
        val formatter = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.ENGLISH)
        val mDate = formatter.parse(dateStr) // this never ends while debugging
    } catch (e: Exception){
        Logger.e("Error $e") // this never gets called either
    }
}

可能的问题是什么?

注:我正在使用,

Android Studio: 3.4.1,Kotlin版本: 1.3.31,Min SDK: 23,Target SDK: 28,Compile : 28

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-06-20 04:15:44

使用以下功能

代码语言:javascript
运行
复制
fun getDate(dateStr: String) {
        try {
            /** DEBUG dateStr = '2006-04-16T04:00:00Z' **/
            val formatter = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ENGLISH)
            val mDate = formatter.parse(dateStr) // this never ends while debugging
            Log.e("mDate", mDate.toString())
        } catch (e: Exception){
            Log.e("mDate",e.toString()) // this never gets called either
        }
    }
票数 5
EN

Stack Overflow用户

发布于 2019-06-20 04:26:39

您的日期格式不正确。它应该如下所示

代码语言:javascript
运行
复制
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");

请注意以Z作为附件的'。您缺少了日期格式的内容。

票数 2
EN

Stack Overflow用户

发布于 2021-03-17 19:53:00

我也有类似的问题,我的问题是我导入了错误的ParseException。您需要确保正在导入java.text解析异常。

检查文件顶部的导入代码。

更正ParseException

代码语言:javascript
运行
复制
import java.text.ParseException

不正确的ParseException

代码语言:javascript
运行
复制
import android.net.ParseException //Android example

您的日期格式也没有排队,所以当然也需要修正。但是,理想情况下,您希望try/catch块能够阻止程序在日期字符串坏的情况下崩溃,所以最好用坏数据来测试它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56678746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档