Calendar:n天前,n个月前,n个年前

为了删除无用或者时间过长的日志,需要根据日志的名称获取日志信息。而日志的名称往往和日期相关联,如log-20220926,类似以日期为后缀,如何判断日志与当前日期的关系,使用到Calandar;

n天前:

Date today = new Date();
        Calendar c = Calendar.getInstance();
        c.setTime(today);
        c.add(Calendar.DAY_OF_MONTH, -6);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
        String day = sdf.format(c.getTime());

就可以对获取的String类型的日期进行操作;

n个月前:

c.add(Calendar.MONTH, -6);

n年前:

c.add(Calendar.YEAR, -6);

另外,创建日志,将后缀名中旧的日期替换为新的日期,这里使用到了StringBuilder

StringBuilder isb = new StringBuilder(indexName);
String index = isb.replace(indexName.length()-8,indexName.length(),day).toString();  //YYYYMMDD8位,day为此刻日期

 

posted @ 2022-09-26 16:01  爱吃荔枝的小涵子  阅读(75)  评论(0)    收藏  举报