package com.hongware.o2o.api.bussiness.openApi.service.mobile.form;
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;
public class TimeToolClass {
/**
* date 转换 String
* @param date 要转换的日期
* @return 日期 String
* */
public String getTransformationString(Date date){
String a=(new SimpleDateFormat("yyyy-MM-dd")).format(date);
return a;
}
/**
* String 转换 Date 日期只能是不带时分秒的
* @param String 要转换的日期
* @return 日期 date
* @throws ParseException
* */
public Date getTransformation(String date) throws ParseException{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = sdf.parse(date);
return date1;
}
/**
* 获取两个日期之间的日期
* @param start 开始日期
* @param end 结束日期
* @return 日期集合
* */
public List<Date> getBetweenDates(Date start, Date end) {
List<Date> result = new ArrayList<Date>();
Calendar tempStart = Calendar.getInstance();
tempStart.setTime(start);
tempStart.add(Calendar.DAY_OF_YEAR, 1);
Calendar tempEnd = Calendar.getInstance();
tempEnd.setTime(end);
while (tempStart.before(tempEnd)) {
result.add(tempStart.getTime());
tempStart.add(Calendar.DAY_OF_YEAR, 1);
}
return result;
}
/**
* 获取两个日期之间相差几天
* */
public Long getDifference(String start,String end){
long days=0;
try {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date fDate=sdf.parse(start);
Date oDate=sdf.parse(end);
days=(oDate.getTime()-fDate.getTime())/(1000*3600*24);
} catch (Exception e) {
e.printStackTrace();
}
return days;
}
/**
* 获取当前小时
* */
public int getDangqian(){
SimpleDateFormat df1 = new SimpleDateFormat("HH");
Date day=new Date();
String todayEndDate=df1.format(day);
int a=Integer.parseInt(todayEndDate);
return a;
}
/**
* 获取从今天往前推得日期
* */
public String getForwardDate(int a){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE)-a);
Date updateDate2 = calendar.getTime();
return sdf.format(updateDate2);
}
/**
* 获取今日时间
* */
public Map<String,String> getToday(){
SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd HH");
Map<String, String> map=new HashMap<String, String>();
Date day=new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String todayStartDate=df.format(day)+" 00:00:00";
String todayEndDate=df1.format(day)+":00:00";
map.put("start", todayStartDate);
map.put("end", todayEndDate);
return map;
}
/**
* 获取今日时间(不带时分秒)
* */
public Map<String,String> getToday1(){
Map<String, String> map=new HashMap<String, String>();
Date day=new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String todayStartDate=df.format(day);
String todayEndDate=df.format(day);
map.put("start", todayStartDate);
map.put("end", todayEndDate);
return map;
}
/**
* 获取昨日时间
* */
public Map<String,String> getYesterday(){
Map<String, String> map=new HashMap<String, String>();
Date as = new Date(new Date().getTime()-24*60*60*1000);
SimpleDateFormat matter1 = new SimpleDateFormat("yyyy-MM-dd");
String yesterdayStartDate = matter1.format(as)+" 00:00:00";
String yesterdayEndDate = matter1.format(as)+" 23:59:59";
map.put("start", yesterdayStartDate);
map.put("end", yesterdayEndDate);
return map;
}
/**
* 获取昨日时间(不带时分秒)
* */
public Map<String,String> getYesterday1(){
Map<String, String> map=new HashMap<String, String>();
Date as = new Date(new Date().getTime()-24*60*60*1000);
SimpleDateFormat matter1 = new SimpleDateFormat("yyyy-MM-dd");
String yesterdayStartDate = matter1.format(as);
String yesterdayEndDate = matter1.format(as);
map.put("start", yesterdayStartDate);
map.put("end", yesterdayEndDate);
return map;
}
/**
* 获取近七天时
* */
public Map<String,String> getSevenDays(){
Map<String, String> map=new HashMap<String, String>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date as = new Date(new Date().getTime()-24*60*60*1000);
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, - 7);
Date monday = c.getTime();
String sevenDaysStartDate = sdf.format(monday)+" 00:00:00";
String sevenDaysEndDate = sdf.format(as)+" 23:59:59";
map.put("start", sevenDaysStartDate);
map.put("end", sevenDaysEndDate);
return map;
}
/**
* 获取近七天时(不带时分秒)
* */
public Map<String,String> getSevenDays1(){
Map<String, String> map=new HashMap<String, String>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date as = new Date(new Date().getTime()-24*60*60*1000);
Calendar c = Calendar.getInstance();
c.add(Calendar.DATE, - 7);
Date monday = c.getTime();
String sevenDaysStartDate = sdf.format(monday);
String sevenDaysEndDate = sdf.format(as);
map.put("start", sevenDaysStartDate);
map.put("end", sevenDaysEndDate);
return map;
}
/**
* 获取近三十天时间
* */
public Map<String,String> getThirtyDays(){
Map<String, String> map=new HashMap<String, String>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date as = new Date(new Date().getTime()-24*60*60*1000);
String sevenDaysEndDate = sdf.format(as);
//获取三十天前日期
Calendar theCa = Calendar.getInstance();
theCa.setTime(as);
theCa.add(theCa.DATE, -29);//最后一个数字30可改,30天的意思
Date start = theCa.getTime();
String startDate = sdf.format(start);//三十天之前日期
String a=startDate+" 00:00:00";
String b=sevenDaysEndDate+" 23:59:59";
map.put("start", a);
map.put("end", b);
return map;
}
/**
* 获取近三十天时间(不带时分秒)
* */
public Map<String,String> getThirtyDays1(){
Map<String, String> map=new HashMap<String, String>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date as = new Date(new Date().getTime()-24*60*60*1000);
String sevenDaysEndDate = sdf.format(as);
//获取三十天前日期
Calendar theCa = Calendar.getInstance();
theCa.setTime(as);
theCa.add(theCa.DATE, -29);//最后一个数字30可改,30天的意思
Date start = theCa.getTime();
String startDate = sdf.format(start);//三十天之前日期
map.put("start", startDate);
map.put("end", sevenDaysEndDate);
return map;
}
}
java中操作日期date常用类整理
最新推荐文章于 2023-03-22 20:29:08 发布