Android java.text.ParseException:字符串的不可解析日期

Android java.text.ParseException:字符串的不可解析日期,android,simpledateformat,Android,Simpledateformat,我有一个字符串格式的日期,我使用SimpleDataFormat解析它,但令我惊讶的是,我一直得到java.text.ParseException:UnparseableDate:Error 我以为我弄错了模式,但我仔细看了看&我不这么认为,我想知道我的问题可能是什么: 我一直在 E/FormatFormDate: java.text.ParseException: Unparseable date: "2019-02-25T22:43:23.213Z" 下面是我的代码: var clean

我有一个字符串格式的日期,我使用SimpleDataFormat解析它,但令我惊讶的是,我一直得到java.text.ParseException:UnparseableDate:Error

我以为我弄错了模式,但我仔细看了看&我不这么认为,我想知道我的问题可能是什么:

我一直在

E/FormatFormDate: java.text.ParseException: Unparseable date: "2019-02-25T22:43:23.213Z"
下面是我的代码:

var clean = "2019-02-25T22:43:23.213Z"

val inputFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
val outputFormatTime = "HH:mm"
val DATE_TIME_ONLY = SimpleDateFormat(outputFormatTime, Locale.getDefault())
if (clean != "") {
    try {
        val parseDate = SimpleDateFormat(inputFormat, Locale.getDefault()).parse(clean)
        clean = DATE_TIME_ONLY.format(parseDate)
        Log.d("TAG", clean)

    } catch (e: ParseException) {
        Log.e("FormatFormDate", Log.getStackTraceString(e))
    }
}
我发现了我的问题:

我的模式是错误的,我应该这样做:

val inputFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
但我却在这样做:

val inputFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"

<>注意,用“z”/p>的单行引号作为可能的重复,考虑扔掉长期过时的和臭名昭著的麻烦代码< SimpleDateFormat >代码>和朋友,并添加到Android项目中,以便使用<代码> java.时间>代码>,java java日期和时间API。和他一起工作真是太好了。是的@OleV.V。我几乎没有发现我的问题,因为我相信我的模式是正确的,所以即使我看到了答案。我以为那不是给我的。谢谢杰克·沃顿的链接,让我看看,如果可能的话,试着更新我的答案错误的答案
Z
是UTC偏移量为零,因此必须进行解析,否则您会得到错误的时间(在绝大多数Java安装中)。