zoukankan      html  css  js  c++  java
  • 常用工具类——DatetimeUtil

    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    
    
    /***
     * 日期时间相关的工具类
     * @author huzf
     *
     */
    public class DatetimeUtil {
        private static final Log log = LogFactory.getLog(DatetimeUtil.class);
        
        private static Map<String, DateFormat> formatMap = new HashMap<>();
        
        /***
         * 获取当前时间的毫秒数,是自1970-1-01 00:00:00.000 到当前时刻的时间距离
         * 如:1445090702909
         * 多线程,有很多重复值
         * @return 返回类型为String
         */
        public static String getCurrentTimeMillis(){
            return String.valueOf(System.currentTimeMillis());
        }
        
        /***
         * 获取当前时间的纳秒,1ms=1000000ns
         * 精准1000000倍的取纳秒的方法
         * 多线程,基本无重复值
         * @return
         */
        public static String getNanoTime(){
            return String.valueOf(System.nanoTime());
        }
        
        /***
         * 返回当前年,如:2015
         * @return
         */
        public static String getCurrentYear(){
            Calendar calendar=Calendar.getInstance();
            return String.valueOf(calendar.get(Calendar.YEAR));
        }
        
        /***
         * 返回当前月,如:07
         * @return
         */
        public static String getCurrentMonth(){
            Calendar calendar=Calendar.getInstance();
            String month=String.valueOf(calendar.get(Calendar.MONTH)+1);
            if(month.length()==1){
                return "0"+month;
            }
            return month;
        }
        
        /***
         * 返回当前日,如:26
         * @return
         */
        public static String getCurrentDayOfMonth(){
            Calendar calendar=Calendar.getInstance();
            return String.valueOf(calendar.get(Calendar.DAY_OF_MONTH));
        }
        
        private static DateFormat getDateFormat(String pattern){
            DateFormat format = formatMap.get(pattern);
            if(format == null){
                format = new SimpleDateFormat(pattern);
    //            format.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
                formatMap.put(pattern, format);
            }
            return format; 
        }
        
        /**
         * 把时间字符串转换成指定格式的时间
          * @param pattern  
          * @param dateString
          * @return Date
         */
        public static Date parse(String pattern, String dateString){
            try{
                DateFormat format = getDateFormat(pattern);
                return format.parse(dateString);
            }catch (ParseException e){
                log.error("时间解析错误 ", e);
                return null;
            }
        }
        
        /**
         * 把时间转换成指定格式的时间字符串
          * @param pattern
          * @param date
          * @return String
         */
        public static String format(String pattern, Date date){
            DateFormat format = getDateFormat(pattern);
            return format.format(date);
        }
        
        public static Date stringConvertDate(String dateString){
            return parse("yyyy-MM-dd HH:mm:ss", dateString);
            
    //        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    //        try {
    //            return sdf.parse(date);
    //        } catch (ParseException e) {
    //            e.printStackTrace();
    //            return null;
    //        }
        }
        
        public static Date stringConvertDate(String dateString,String pattern){
            return parse(pattern, dateString);
            
    //        SimpleDateFormat sdf = new SimpleDateFormat(p);
    //        try {
    //            return sdf.parse(date);
    //        } catch (ParseException e) {
    //            e.printStackTrace();
    //            return null;
    //        }
        }
        
        public static Date convertDate(Date date,String p){
            SimpleDateFormat sdf = new SimpleDateFormat(p);
            SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            try {
                return sdf2.parse(sdf.format(date));
            } catch (ParseException e) {
                log.error("DatetimeUtil.convertDate:"+e.getMessage());
                return null;
            }
        }
        
    //    public static void main(String[] args) {
    //        Date d = DatetimeUtil.stringConvertDate("1991-07-30 00:00:00", "yyyy-MM-dd HH:mm:ss");
    //        System.out.println(d);
    //    }
        
        /***
         * 返回当前时间,如:2015-01
         * @return
         */
        public static String getDateTime(){
            Calendar calendar=Calendar.getInstance();
            String year= String.valueOf(calendar.get(Calendar.YEAR));
            String month=String.valueOf(calendar.get(Calendar.MONTH)+1);
            if(month.length()==1){
                month="0"+month;
            }
            String datetime=year+"-"+month;
            return datetime;
        }
        /***
         * 返回当前时间的前一月份,如:2015-01前一月份是2014-12
         * @return
         */
        public static String getMonthAgo(){
            Calendar calendar=Calendar.getInstance();
            String year= String.valueOf(calendar.get(Calendar.YEAR));
            String month=String.valueOf(calendar.get(Calendar.MONTH)+1);
            if(month.equals("1")){
                year= String.valueOf(calendar.get(Calendar.YEAR)-1);
                month="12";
            }else{
                month=String.valueOf(calendar.get(Calendar.MONTH));
            }
            if(month.length()==1){
                month="0"+month;
            }
            String datetime=year+"-"+month;
            return datetime;
        }
        /***
         * 返回当前时间的前年,如:2015前一年是2014
         * @return
         */
        public static String getYearAgo(){
            Calendar calendar=Calendar.getInstance();
            String year= String.valueOf(calendar.get(Calendar.YEAR)-1);
            return year;
        }
        
        /***
         * 返回查询时间
         * @return
         */
        static Calendar c = Calendar.getInstance();
        // 获取当前月
        final int month = c.get(Calendar.MONTH) + 1;
        public int getmonth() {
            return month;
        }
    
        // 获取到当前年
        final int year = c.get(Calendar.YEAR);
        public int getYear() {
            return year;
        }
    
        // 获取上一个季度
        public int getCurrentQuarger() {
            if (month >= 1 && month <= 3)
                return 4;
            if (month >= 4 && month <= 6)
                return 1;
            if (month >= 7 && month <= 9)
                return 2;
            return 3;
        }
    
        // 获取上一个月
        public int getCurrentMonthAgo() {
            if (month == 1) {
                return 12;
            }
            int currentMonth = month - 1;
            return currentMonth;
        }
    
        // 获取上一年
        public int getCurrentYearAgo() {
            return year - 1;
        }
    
        // 判断当前月分是否用生成季度报表
        public boolean isCreateQuarter() {
            if (month == 1 || month == 4 || month == 7 || month == 10) {
                return true;
            }
            return false;
        }
    
        // 获取季报表查询开始时间
        public String getQuarterBegin() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "10";
                yearTemp = year - 1;
            } else {
                monthTemps = "0" + (month - 3);
            }
            if (this.isCreateQuarter()) {
                date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            }
            return date;
        }
    
        // 获取到即报表上上季度开始时间
        public String getQuarerLastBengin() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "07";
                yearTemp = year - 1;
            } else if (month == 4) {
                monthTemps = "10";
                yearTemp = year - 1;
            } else {
                monthTemps = "0" + (month - 6);
            }
    
            if (this.isCreateQuarter()) {
                date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            }
            return date;
        }
    
        // 获取季报表查询结束时间
        public String getQuarterEnd() {
            String date = null;
            String monthTemps = String.valueOf(month);
            if (month < 10)
                monthTemps = "0" + monthTemps;
            if (this.isCreateQuarter()) {
                date = year + "-" + monthTemps + "-" + "01" + " 00:00:00";
            }
            return date;
        }
    
        // 获取到即报表上上季度结束时间
        public String getQuarerLastEnd() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "10";
                yearTemp = year - 1;
            } else if (month == 4) {
                monthTemps = "01";
            } else {
                monthTemps = "0" + (month - 3);
            }
            if (this.isCreateQuarter()) {
                date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            }
            return date;
        }
    
        // 获取月报表查询开始时间
        public String getMonthBegin() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "12";
                yearTemp = year - 1;
            } else if (month < 11) {
                monthTemps = "0" + (month - 1);
            }
            date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            return date;
        }
    
        // 获取上上月报表查询开始时间
        public String getMonthLastBegin() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "11";
                yearTemp = year - 1;
            } else if (month == 2) {
                monthTemps = "12";
                yearTemp = year - 1;
            } else if (month < 12) {
                monthTemps = "0" + (month - 2);
            } else {
                monthTemps = String.valueOf(month - 1);
            }
            date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            return date;
        }
    
        // 获取月报表查询结束时间
        public String getMonthEnd() {
            String date = null;
            String monthTemps = String.valueOf(month);
            if (month < 10) {
                monthTemps = "0" + month;
            }
            date = year + "-" + monthTemps + "-" + "01" + " 00:00:00";
            return date;
        }
        // 获取上上月报表查询结束时间
        public String getMonthLastEnd() {
            String date = null;
            String monthTemps = String.valueOf(month);
            int yearTemp = year;
            if (month == 1) {
                monthTemps = "12";
                yearTemp = year - 1;
            }
            if (month < 11) {
                monthTemps = "0" + (month - 1);
            } else {
                monthTemps = String.valueOf(month - 1);
            }
            date = yearTemp + "-" + monthTemps + "-" + "01" + " 00:00:00";
            return date;
        }
        //获取上个月的最后一天
        public static String getMonthLastDay(){
            Calendar cal = Calendar.getInstance();
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            cal.set(Calendar.DAY_OF_MONTH, 1); 
            cal.add(Calendar.DATE, -1);
            String data =df.format(cal.getTime());
            return data;
            
        }
        //获取本月的最后一天
        public String getThisMonthLastDay(){
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 
            Calendar ca = Calendar.getInstance();    
            ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH));  
            String last = format.format(ca.getTime());
            return last;
        }
        //获取某月有几天
        public static Integer getThisMonthDay(String pTime){
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
              Calendar c = Calendar.getInstance();
              try {
                c.setTime(format.parse(pTime));
            } catch (ParseException e) {
                log.error("DatetimeUtil.getThisMonthDay:"+e.getMessage());
            }
                System.out.println("------------" + c.get(Calendar.YEAR) + "年" + (c.get(Calendar.MONTH) + 1) + "月的天数和周数-------------");
                return c.getActualMaximum(Calendar.DAY_OF_MONTH);
        }
        
        //获取上个月的第一天
        public static String getMonthFirstDay(){
            Calendar cal = Calendar.getInstance();
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            cal.add(Calendar.MONTH, -1);
            cal.set(Calendar.DAY_OF_MONTH, 1);
            String data = df.format(cal.getTime());
            return data;
        }
        
        //获取本月的第一天
        public String getThisMonthFirstDay(){
            Calendar cal = Calendar.getInstance();
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            cal.add(Calendar.MONTH, 0);
            cal.set(Calendar.DAY_OF_MONTH, 1);
            String data = df.format(cal.getTime());
            return data;
        }
            
        // 获取月报表名字前缀
        public String getMonthName() {
            int yearTemp = year;
            if (month == 1) {
                yearTemp = this.getCurrentYearAgo();
            }
            return yearTemp + "-" + this.getCurrentMonthAgo();
        }
    
        // 获取季报表名字前缀
        public String getQuarterName() {
            int yearTemp = year;
            if (month == 1) {
                yearTemp = this.getCurrentYearAgo();
            }
            return yearTemp + "第" + this.getCurrentQuarger() + "季度";
        }
        
        //获取当前日期是周几
        public static int getDay(){
            int getWeek = c.get(Calendar.DAY_OF_WEEK);
            if (getWeek == 1) {
                return 7;
            }else {
                return getWeek - 1;
            }
        }
    
        // 获取到本周周一//此数据不稳定请勿用
        public String getMonday() {
            
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); // 获取本周一的日期
            cal.add(Calendar.WEEK_OF_YEAR, 0);
            String data =df.format(cal.getTime());
            return data;
        }
        // 获取到本周周一//获取本周周一请用此方法
        public String getMondaytoday() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar c = Calendar.getInstance();
            c.setTime(new Date()); 
            int day_of_week = c.get(Calendar. DAY_OF_WEEK) - 1;  
            if (day_of_week == 0 ) {  
                day_of_week = 7 ;  
            }  
            c.add(Calendar.DATE , -day_of_week + 1 );  
            c.add(Calendar.WEEK_OF_YEAR, 0);
            String data =df.format(c.getTime());
            return data;
        }
        //获取本周周日
        public String getMondaySumDay() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar c = Calendar.getInstance();
            c.setTime(new Date()); 
            int day_of_week = c.get(Calendar. DAY_OF_WEEK) - 1;  
            if (day_of_week == 0 ) {  
                day_of_week = 7 ;  
            }  
            c.add(Calendar.DATE , -day_of_week + 1 );  
            c.add(Calendar.WEEK_OF_YEAR, 0);
            c.add(Calendar.DAY_OF_YEAR,6);
            String data =df.format(c.getTime());
            System.out.print(data);
            return data;
        }
        // 获取到上个周周一
        public String getMondayLast() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); // 获取本周一的日期
            cal.add(Calendar.WEEK_OF_YEAR, -1);
            String data =df.format(cal.getTime());
            return data;
        }
        
    
        
        //获取三个周前的周一
        public String getMondayThree() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); // 获取本周一的日期
            cal.add(Calendar.WEEK_OF_YEAR, -3);
            String data =df.format(cal.getTime());
            return data;
        }
        // 获取到上个周周天
        public String getLastSum() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); // 获取本周一的日期
            cal.add(Calendar.WEEK_OF_YEAR, -1);
            cal.add(Calendar.DATE, +6);
            String data =df.format(cal.getTime());
            return data;
        }
    
        //获取周报名字
        public String getMondayName(){
            return getMondayLast()+"到"+getMonday();
        }
        //获取两分钟前
        public String getLastMinute(){
            SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Calendar cal = Calendar.getInstance();
            cal.add(Calendar.MINUTE, -15);//15分钟前
            String data=time.format(cal.getTime());
            return data;
        }
        //获取当前时间
        public String getMinute(){
            SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Calendar cal = Calendar.getInstance();
            String data=time.format(cal.getTime());
            return data;
        }
        
        public String getMinutes(){
            SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            String data=time.format(cal.getTime());
            return data;
        }
        //获取上一天
        public static String getLastDay(){
            SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.add(Calendar.DATE, -1);//获取一天前
            String data=time.format(cal.getTime());
            return data;
        }
        //获取七天前日期
        public static String getLastweek(){
            SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.add(Calendar.DATE, -7);//7前
            String data=time.format(cal.getTime());
            return data;
        }
    
        // 获取到七个周前周一
        public String getMondayLastSeven() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            c.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); //
            c.add(Calendar.WEEK_OF_YEAR, -7);
            String data =df.format(c.getTime());
            return data;
        }
        
        // 获取到半年前时间
        public String getSexMonth() {
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            cal.set(Calendar.YEAR,Calendar.MONDAY-6,Calendar.DATE);
            String data =df.format(cal.getTime());
            return data;
        }
    
        /**
         *@Title getViewTime 
          * @author lize16713
          * @Description 获取年数
         */
        public static String getViewTime(Long ms){
            double yesr = ms/(1000.0*60.0*60.0*24.0*30.0*12.0);
            String time = String.format("%.1f", yesr);
            
            if(time.contains("-")){
                return time = "0 年";
            }
            
            String[] str = time.split("\.");
            
            int i= Integer.parseInt(str[0]);
            int d = Integer.parseInt(str[1]);
            if(i>0&&d>=5){
                time = str[0]+".5 年";
            }else if(i>0&&d<5){
                time = str[0]+" 年";
            }else if(i<=0&&d>=5){
                time = "1  年";
            }else{
                time = "0.5 年";
            }
            return time;
        }
        
        /**
         * yangkai17025
         * 给定时间判断此时间所在周的周一*(周日)
         * **/
        public String  convertWeekByDate(Date time) {  
            SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式  
            Calendar cal = Calendar.getInstance();  
            cal.setTime(time);  
            //判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了  
            int dayWeek = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天  
            if(1 == dayWeek) {  
                cal.add(Calendar.DAY_OF_MONTH, -1);  
            }  
            System.out.println("要计算日期为:"+sdf.format(cal.getTime())); //输出要计算日期  
            cal.setFirstDayOfWeek(Calendar.MONDAY);//设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一  
            int day = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天  
            cal.add(Calendar.DATE, cal.getFirstDayOfWeek()-day);//根据日历的规则,给当前日期减去星期几与一个星期第一天的差值   
            String imptimeBegin = sdf.format(cal.getTime()); // 周一  
    //        cal.add(Calendar.DATE, 6);  
    //        String imptimeEnd = sdf.format(cal.getTime());//周天
            return imptimeBegin;    
            }  
        
        /**
         * yangkai17025
         * 
         * **/
        public static class MyDate{
             int day;
             int month;
             int year;
             SimpleDateFormat sdf0 = new SimpleDateFormat("yyyy");
             SimpleDateFormat sdf1 = new SimpleDateFormat("MM");
             SimpleDateFormat sdf2= new SimpleDateFormat("dd");
    
             public MyDate(Date d){
              this.day = Integer.valueOf(sdf2.format(d));
              this.month =  Integer.valueOf(sdf1.format(d));
              this.year = Integer.valueOf(sdf0.format(d));;
         }
    
             public long funtion(MyDate d){
                int newDay = d.day;
                int newMonth = d.month;
                int newYear = d.year;
                Calendar c1 = Calendar.getInstance();
                c1.set(newYear,newMonth,newDay);
                long n1 = c1.getTimeInMillis();
                Calendar c2 = Calendar.getInstance();
                c2.set(year,month,day);
                long n2 = c2.getTimeInMillis();
                return Math.abs((n1 - n2)/24/3600000); 
             }
        }
        /**
         * 两个时间之间的查(天)
         * yangkai17025
         * 
         * **/
         public static long getDateDiffe(Date a,Date b){
             MyDate d1 = new MyDate(a);
             MyDate d2 = new MyDate(b);
             return d1.funtion(d2);
        }
        /**
         * 获取本月有多少天)
         * yangkai17025
         * 
         * **/
         public static int getDateOfMonth(){
             Calendar cal = Calendar.getInstance();
             cal.setTime(new Date());
             cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));
             return cal.get(Calendar.DAY_OF_MONTH);
        }
    /**
     *返回给定时间是周几 
     * @throws ParseException 
     **/
         public static int getDayForWeek(String pTime){
              SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
              Calendar c = Calendar.getInstance();
              try {
                c.setTime(format.parse(pTime));
            } catch (ParseException e) {
                log.error("DatetimeUtil.getDayForWeek:"+e.getMessage());
            }
              int dayForWeek = 0;
              if(c.get(Calendar.DAY_OF_WEEK) == 1){
               dayForWeek = 7;
              }else{
               dayForWeek = c.get(Calendar.DAY_OF_WEEK) - 1;
              }
              return dayForWeek;
             }
         
         /**
          * 更新work_day数据
          */
         public static void updateWorkDay(){
             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
             int year= 2017;
             int m=1;//月份计数
             while (m<13){
              int month=m;
              Calendar cal=Calendar.getInstance();//获得当前日期对象
              cal.clear();//清除信息
              cal.set(Calendar.YEAR,year);
              cal.set(Calendar.MONTH,month-1);//1月从0开始
              cal.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天 
              
              
              int count=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
              
              System.out.println("当月天数" + count);
              
              System.out.println("INSERT INTO sys_workday (create_time,update_time,work_day) VALUES (NOW(),NOW(),'"+sdf.format(cal.getTime())+"');");//当月第一天
              for (int j=0;j<=(count - 2);){
              cal.add(Calendar.DAY_OF_MONTH,+1);
              j++;
              System.out.println("INSERT INTO sys_workday (create_time,update_time,work_day) VALUES (NOW(),NOW(),'"+sdf.format(cal.getTime())+"');");
              }
              m++;
             }
         }
         
         /**
          * 获取给定时间的星期
          * @param time
          * @return
          */
         public static String getWeek(Date time){
             if(time == null){
                 return null;
             }
            Calendar c = Calendar.getInstance();
            c.setTime(time);
            int week = c.get(Calendar.DAY_OF_WEEK) - 1;
            if (week == 1) {
                return "星期一";
            }
            if (week == 2) {
                return "星期二";
            }
            if (week == 3) {
                return "星期三";
            }
            if (week == 4) {
                return "星期四";
            }
            if (week == 5) {
                return "星期五";
            }
            if (week == 6) {
                return "星期六";
            }
            if (week == 0) {
                return "星期日";
            }
            return null;
        }
         
        /**
         * 获取当前时间前num天的日期
         * 
         * @param num
         * @return
         */
        public static List<String> getDateList(int num) {
            List<String> dateList = new ArrayList<>();
            Calendar c = Calendar.getInstance();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            dateList.add(sdf.format(c.getTime()));
            if (num <= 0) {
                return dateList;
            }
    
            for (int i = 1; i < num; i++) {
                Calendar calendar = Calendar.getInstance();
                calendar.add(Calendar.DAY_OF_MONTH, -i);
                dateList.add(sdf.format(calendar.getTime()));
                calendar.clear();
            }
            return dateList;
        }
         
         public static void main(String[] args) {
             updateWorkDay();
        }
    
         /**
          *给定String返回data 
          * @throws ParseException 
          **/
              public static Date getDayOfStirng(String pTime) throws ParseException{
                   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
                   return format.parse(pTime);
              }
    
    }
  • 相关阅读:
    浅析嵌入式程序设计中的优化问题
    TCP粘包问题
    使用python 批量 配对t检验 医学 基础研究 数据分析
    Ubuntu误删系统文件修复办法
    飞思卡尔powerpc交叉编译环境的
    ubuntu packege下载网址
    数组对象里面对日期进行排序
    c# 字符串以逗号分割属性加上单引号
    Vue mysql 变量赋值, 获取数组
    Element vue Select 下拉框默认
  • 原文地址:https://www.cnblogs.com/realshijing/p/8419421.html
Copyright © 2011-2022 走看看