java 时间操作 --持续更新

论坛 期权论坛 脚本     
匿名技术用户   2021-1-14 13:59   11   0

1、时间戳转为日期格式

public class Time{
 
 public static void  main(String args[]){
  String time="1381730322000";
  System.out.println(TimeStamp2Date(time, "yyyy-MM-dd HH:mm:ss"));
 }
 
 
 public static String TimeStamp2Date(String timestampString, String formats){  
    Long timestamp = Long.parseLong(timestampString);  
    String date = new java.text.SimpleDateFormat(formats).format(new java.util.Date(timestamp));  
    return date;  
  }
 
}

2、获取本周周一日期

Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String MonDate = formatter.format(cal.getTime());

3、获取N天前的日期

/**
  * 获取n天前的日期
  * @param n
  * @return
  */
 public static String getNDayBefore(int n) {
  Date date = new Date();
  int year = Integer.parseInt(new SimpleDateFormat("yyyy").format(date));
  int month = Integer.parseInt(new SimpleDateFormat("MM").format(date));
  int day = Integer.parseInt(new SimpleDateFormat("dd").format(date)) - n;
  if (day < 1) {
   month -= 1;
   if (month == 0) {
    year -= 1;
    month = 12;
   }
   if (month == 4 || month == 6 || month == 9 || month == 11) {
    day = 30 + day;
   } else if (month == 1 || month == 3 || month == 5 || month == 7
     || month == 8 || month == 10 || month == 12) {
    day = 31 + day;
   } else if (month == 2) {
    if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
     day = 29 + day;
    } else {
     day = 28 + day;
    }
   }
  }
  String y = year + "";
  String m = "";
  String d = "";
  if (month < 10)
   m = "0" + month;
  else
   m = month + "";
  if (day < 10)
   d = "0" + day;
  else
   d = day + "";
  return y + "-" + m + "-" + d;
 }



分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP