ホームページ  >  記事  >  Java  >  Javaで文字列を日付に変換する方法は何ですか

Javaで文字列を日付に変換する方法は何ですか

青灯夜游
青灯夜游オリジナル
2021-04-23 17:58:2769825ブラウズ

変換方法: 1. SimpleDateFormat を使用して時間をフォーマットします。 2. "org.apache.commons.lang3.time.DateUtils" を使用して時間をフォーマットします。 3. DateTimeFormatter を使用して時間をフォーマットします。

Javaで文字列を日付に変換する方法は何ですか

#このチュートリアルの動作環境: Windows7 システム、Java8 バージョン、DELL G3 コンピューター。

文字列を日付に変換するには、SimpleDateFormat、org.apache.commons.lang3.time.DateUtils、DateTimeFormatter (Java 8) の 3 つの一般的な方法があります。

#Descriptionスレッド非安全な柔軟なテキスト マッチングDateUtilsツール クラス、日付操作をサポートスレッド セーフティ、チェーン プログラミングをサポートLocalDateTime、便利な比較操作
/**
     *     指定当前时间-指定时间是否大于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);
        }
    }
関連ビデオ チュートリアルの推奨事項:Java ビデオ チュートリアル
SimpleDateFormat

DateTimeFormatter

サンプル コードは次のとおりです

以上がJavaで文字列を日付に変換する方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。