如何将execl表格中日期期格式如2021/9/1替换为2021/09/01呢?_java实现思路

实现思路有两种方案_最终拿到的效果都是一样的

方案一

  • 表格传过来的日期是字符串格式,可以使用字符的截取功能
  • 具体实现如下
       endDateStr=2021/9/1“;
       String[] split1 = endDateStr.split("/");
        List<String> strings1 = Arrays.asList(split1);
        String year1 = strings1.get(0);
        String month1 = strings1.get(1);
        String day1 = strings1.get(2);
        if(month1.length()==1){
            month1 = "0" + month1;
        }
        if(day1.length() == 1){
            day1 = "0" + day1;
        }
        String endDateStr1 = year1 + "/" + month1 + "/" + day1;
       Sysytem.out.println(endDateStr) //2021/09/01

方案二:

  • 将传过来的字符串日期转换成日期,再将日期转换成字符串(推荐使用)
  • 这里有date日期和LocalDate日期。分别实现如下
  1. Date
/**
     * 格式化日期 {"2021/9/1"改为"2021/09/01"}
     */
    private String parseDate(String data){
        Date parse;
        try {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd");
            parse =simpleDateFormat.parse(data);
            return simpleDateFormat.format(parse);
        } catch (ParseException e) {
            throw new BizException("Date formatting failed");
        }
    }
  1. LocallDate
//这种方法需要判断前端execl传过来的是否是这种格式
public String dateTest(){

	DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy/MM/d");
	LocalDateTime parse = LocalDate.parse("2021/10/1", dateTimeFormatter).atStartOfDay();
	DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy/MM/dd");
	String localTime = df.format(parse);
	System.out.println(localTime);
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值