您的位置 首页 java

java中将string转为date的方法有哪些

转换方法:1、使用SimpleDateFormat来格式化时间;2、使用“org.apache.commons.lang3.time.DateUtils”来格式化时间;3、使用DateTimeFormatter来格式化时间。

本教程操作环境:windows7系统、java8版、DELL G3电脑。

String转Date常见三种方式:SimpleDateFormat、org.apache.commons.lang3.time.DateUtils、DateTimeFormatter(Java 8)

描述
SimpleDateFormat 线程不安全、文本匹配灵活

DateUtils

工具类、支持日期运算
DateTimeFormatter

线程安全、配合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视频教程

文章来源:智云一二三科技

文章标题:java中将string转为date的方法有哪些

文章地址:https://www.zhihuclub.com/18999.shtml

关于作者: 智云科技

热门文章

网站地图