java - 2020-04-03 20 :17:46 to "yyyy-MM-dd' T'HH:mm:ss"format

标签 java jodatime simpledateformat java.util.date

java(java.util.* 或 Joda api )中是否有任何方法将“2020-04-03 20:17:46”转换为 “yyyy-MM-dd 'T'HH:mm:ss"

new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss")
          .parse("2020-04-03 20:17:46")

它总是给出 java.text.parseException

最佳答案

仅对于您使用 Java 8 或更高版本的情况,请使用 java.time
请参阅这个简单的示例:

public static void main(String[] args) {
    // example datetime
    String datetime = "2020-04-03 20:17:46";
    // create a formatter that parses datetimes of this pattern
    DateTimeFormatter parserDtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    // then parse the datetime with that formatter
    LocalDateTime ldt = LocalDateTime.parse(datetime, parserDtf);
    // in order to output the parsed datetime, use the default formatter (implicitly)
    System.out.println(ldt);
    // or format it in a totally different way
    System.out.println(ldt.format(
            DateTimeFormatter.ofPattern("EEE, dd. 'of' MMM 'at' hh-mm-ss a",
                    Locale.ENGLISH)
            )
    );
}

此输出

2020-04-03T20:17:46
Fri, 03. of Apr at 08-17-46 PM

请注意,这不考虑任何时区或偏移量,它仅表示由过去或解析的年、月、日、小时、分钟和秒组成的日期和时间,仅此而已。

关于java - 2020-04-03 20 :17:46 to "yyyy-MM-dd' T'HH:mm:ss"format,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61108496/

相关文章:

java - 找不到 hazelcast 映射器类

java - 如何使用 org.joda.time 设置时区?

java - 如何将月份缩写为 3 个字符?

java - 如何构建 libprotobuf-lite.so

java - 32位JVM : Maximum Heap space?

java - 添加图像到java小程序?

java - Java 中的 Date.getTime() 在不同的服务器中返回不同的时间

c# - Java 中 TimeZone.getDefault().getID() 在 C# 中的等效项是什么?

java - 从 LocalDate 到 java.sql.Date 的正确方法是什么

java dateformat 非法模式字符 'y'