java - 将带有毫秒和时区的字符串转换为日期

标签 java android android-studio android-date

我有这种格式的字符串: 2017-04-06T09:29:12.225Z

我需要我尝试过的日期格式:

   private Date convertStringToDate(String dateString) {
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.sssZ");
    Date convertedDate = new Date();
    try {
        convertedDate = dateFormat.parse(dateString);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return convertedDate;
}

但它显示无法解析的错误?

最佳答案

从 Java 7 开始你可以使用

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX");

X 代表ISO 8601 时区,它可能只是Z(零时区)或类似-08-0800-08:00。 另请参阅 javadoc of SimpleDateFormat 中给出的表格.

关于java - 将带有毫秒和时区的字符串转换为日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43253975/

相关文章:

java - 使用等高的行创建 GridLayout

java - 关于 OutOfMemoryError 及其处理方法

android - 如何从单独的 fragment 在 Google map 上发布标记?

android - 在Android应用程序中设置背景图像模糊效果

java - 在 fragment 中实现时,Google map 控制按钮(例如 mylocation 等)会消失

android - 无法在 AndroidStudio 2.1 Beta 中从 GitHub 克隆

java - 用非零退出值完成

java - 将其他两个之间的单词作为正则表达式排除

java - Float vs double Math Java

android - 从网站下载 SSL 证书并发送