Konvertierungsmethode: 1. Verwenden Sie SimpleDateFormat, um die Zeit zu formatieren. 2. Verwenden Sie „org.apache.commons.lang3.time.DateUtils“, um die Zeit zu formatieren. 3. Verwenden Sie DateTimeFormatter, um die Zeit zu formatieren.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Java8-Version, DELL G3-Computer.
Es gibt drei gängige Möglichkeiten, String in Date zu konvertieren: SimpleDateFormat, org.apache.commons.lang3.time.DateUtils, DateTimeFormatter (Java 8)
Description | |
---|---|
SimpleDateFormat | .Thread unsicherer, flexibler Textabgleich |
DateUtils |
Werkzeugklasse, unterstützt Datumsoperationen |
DateTimeFormatter | Thread-Sicherheit, unterstützt Kettenprogrammierung mit LocalDateTime und erleichtert Vergleichsoperationen |
Das Folgende ist der Beispielcode
/** * 指定当前时间-指定时间是否大于30秒 */ //SimpleDateFormat private static void m1() throws ParseException { String endTime = "哈哈2020-02-07 18:58:02.0你好";//支持特殊格式转换 String format = "哈哈yyyy-MM-dd HH:mm:ss"; SimpleDateFormat sdf = new SimpleDateFormat(format); Date edate = sdf.parse(endTime); Date now = new Date(); String nowStr = DateFormatUtils.format(now, format); if(DateUtils.addSeconds(edate, 30).before((now))){ logger.info("true endTime={} now={}",endTime, nowStr); }else{ logger.info("false endTime={} now={}",endTime, nowStr); } } //DateUtils private static void m3() throws ParseException { String endTime = "2020-02-07 18:58:02.0"; String format = "yyyy-MM-dd HH:mm:ss"; Date edate = DateUtils.parseDate(endTime, format, "yyyy-MM-dd HH:mm:ss.SSS");//支持多格式匹配 Date now = new Date(); String nowStr = DateFormatUtils.format(now, format); if(DateUtils.addSeconds(edate, 30).before((now))){ logger.info("true endTime={} now={}",endTime, nowStr); }else{ logger.info("false endTime={} now={}",endTime, nowStr); } } //DateTimeFormatter private static void m2(){ String endTime = "2020-02-07 18:58:02"; String format = "yyyy-MM-dd HH:mm:ss"; LocalDateTime now = LocalDateTime.now(); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(format); String nowStr = now.format(dateTimeFormatter); if(LocalDateTime.parse(endTime, dateTimeFormatter) .plusSeconds(30).isBefore(LocalDateTime.now())){//链式编程 logger.info("true endTime={} now={}",endTime, nowStr); }else{ logger.info("false endTime={} now={}",endTime, nowStr); } }
Empfohlene verwandte Video-Tutorials: Java-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es, um eine Zeichenfolge in Java in ein Datum zu konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!