欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android 笔记:计算当前日期时间前后几天的封装方法

程序员文章站 2022-06-24 22:30:02
...

在开发过程中,需要获取某个时间点一个月或若干个月前的时间,便单独封装了方法,在博客中记录下来,以便大家使用。
两个方法的传参 Data 是当前时间,day是你需要推后或者提前的天数,第二个是String转换Data类型的,如果后台返回的是String类型的话,可以转换Data类型.

/**
 * 得到几天前的时间
 * @param d
 * @param day
 * @return */
 public static Date getDateBefore(Date d,int day){
    Calendar now =Calendar.getInstance();
    now.setTime(d);
    now.set(Calendar.DATE,now.get(Calendar.DATE)-day);
    return now.getTime();
}

/**
 * 得到几天后的时间
 * @param d
 * @param day
 * @return */
  public static Date getDateAfter(Date d,int day){
    Calendar now =Calendar.getInstance();
    now.setTime(d);
    now.set(Calendar.DATE,now.get(Calendar.DATE)+day);
    return now.getTime();
}


/**
 * String   转 Date;
 * @param str
 * @return */

  public static Date StringToDate(String str){

    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//小写的mm表示的是分钟
    Date date= null;
    try {
        date = sdf.parse(str);
    } catch (ParseException e) {
        e.printStackTrace();
    }

    return date;
}

最后顺便附上Data转String的方法

/**
 * String   转 Date;
 * @param str
 * @return */

 public static Date StringToDate(String str){
    //小写mm表示的是分钟
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
    Date date= null;
    try {
        date = sdf.parse(str);
    } catch (ParseException e) {
        e.printStackTrace();
    }

    return date;
}

大家可根据实际需要进行修改代码。

相关标签: 日期