Maison > Java > JavaBase > le corps du texte

Quelles sont les méthodes pour convertir une chaîne en date en Java

青灯夜游
Libérer: 2023-01-13 00:39:54
original
69835 Les gens l'ont consulté

Méthode de conversion : 1. Utilisez SimpleDateFormat pour formater l'heure ; 2. Utilisez "org.apache.commons.lang3.time.DateUtils" pour formater l'heure ;

Quelles sont les méthodes pour convertir une chaîne en date en Java

L'environnement d'exploitation de ce tutoriel : système windows7, version java8, ordinateur DELL G3.

Il existe trois manières courantes de convertir une chaîne en date : SimpleDateFormat, org.apache.commons.lang3.time.DateUtils, DateTimeFormatter (Java 8)

Description
SimpleDateFormat Correspondance de texte flexible et non sécurisée
  描述
SimpleDateFormat 线程不安全、文本匹配灵活

DateUtils

工具类、支持日期运算
DateTimeFormatter

线程安全、配合LocalDateTime支持链式编程、方便比较运算

DateUtils

Classe d'outils, prend en charge les opérations de date
DateTimeFormatter
Thread- sûr, coopère avec LocalDateTime Prend en charge la programmation en chaîne et facilite les opérations de comparaison

Ce qui suit est l'exemple de code

/**
     *     指定当前时间-指定时间是否大于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);
        }
    }
Copier après la connexion

Tutoriels vidéo recommandés :Tutoriel vidéo Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!