android 时间方法有,Android处理时间各种方法汇总

本文实例为大家分享了Android处理时间的各种方法,供大家参考,具体内容如下

/**

* 获取当前时间

*

* @return 当前时间

*/

public static String getdate() {

SimpleDateFormat formatter = new SimpleDateFormat("HH:mm");

Date curDate = new Date(System.currentTimeMillis());// 获取当前时间

String time = formatter.format(curDate);

return time;

}

/**

* 获取当前秒数

* @return

*/

public static String getSecond(){

Calendar calendar = Calendar.getInstance();

int sec = calendar.get(Calendar.SECOND);

String value = String.valueOf(sec<10?"0"+sec:sec);

return value;

}

/**

* 获取当天日期

*

* @return 当前时间

*/

public static String getriqi() {

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

Date curDate = new Date(System.currentTimeMillis());// 获取当天日期

String time = formatter.format(curDate);

return time;

}

/**

* 获取当前全部时间

*

* @return 当前时间

*/

public static String getalldate() {

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date curDate = new Date(System.currentTimeMillis());// 获取当前时间

String time = formatter.format(curDate);

return time;

}

public static Date getDate(String time){

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date date = null;

try {

date = formatter.parse(time);

} catch (ParseException e) {

e.printStackTrace();

}

return date;

}

/**

* 天数减一

*/

public static String Yesterday(int data) {

SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd");

Date beginDate = new Date();

Calendar date = Calendar.getInstance();

date.setTime(beginDate);

date.set(Calendar.DATE,date.get(Calendar.DATE) - data);

// Date endDate = dft.parse(dft.format(date.getTime()));

String time = dft.format(date.getTime());

return time;

}

/**

* 获取星期

*

* @param date日期

* ****-**-**

* @return

*/

public static int getDay(Date date) {

Calendar cal = Calendar.getInstance();

cal.setTime(date);

return cal.get(Calendar.DAY_OF_WEEK);

}

/**

* 时间顺序判断

* @param data_ruke

* @param data_choice

* @return

*/

public static boolean conpare_data(String data1,String data2){

if(data1==null||"".equals(data1)){

return true;

}

DateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try{

Date dt1 = dFormat.parse(data1);

Date dt2 = dFormat.parse(data2);

if(dt1.getTime()>dt2.getTime()){

Log.i("time_compare","dt1在dt2之后");

return false;

}else if (dt1.getTime() < dt2.getTime()) {

Log.i("time_compare","dt1在dt2之前");

return true;

}

}catch(Exception e){

e.printStackTrace();

}

return false;

}

/**

* 日期比较

*/

public static int compare_date(String DATE1,String DATE2) {

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");

try {

Date dt1 = df.parse(DATE1);

Date dt2 = df.parse(DATE2);

if (dt1.getTime() > dt2.getTime()) {

if (dt1.getTime() - dt2.getTime() == 86400000) {

return 1;

} else if (dt1.getTime() - dt2.getTime() == (86400000 * 2)) {

return 2;

} else if (dt1.getTime() - dt2.getTime() == (86400000 * 3)) {

return 3;

} else {

return 0;

}

} else {

return 0;

}

} catch (Exception exception) {

exception.printStackTrace();

return 0;

}

}

/**

* 返回两个string类型日期之间相差的天数

*/

public static int daysBetween(String smdate,String bdate){

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

Calendar cal = Calendar.getInstance();

long time1 = 0;

long time2 = 0;

try{

cal.setTime(sdf.parse(smdate));

time1 = cal.getTimeInMillis();

cal.setTime(sdf.parse(bdate));

time2 = cal.getTimeInMillis();

}catch(Exception e){

e.printStackTrace();

}

long between_days=(time2-time1)/(1000*3600*24);

return Integer.parseInt(String.valueOf(between_days));

}

/**

* 返回两个string类型日期相差的小时数

*/

public static int daysBetween2(String startTime,String endTime) {

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH");

Calendar cal = Calendar.getInstance();

long time1 = 0;

long time2 = 0;

try{

cal.setTime(sdf.parse(startTime));

time1 = cal.getTimeInMillis();

cal.setTime(sdf.parse(endTime));

time2 = cal.getTimeInMillis();

}catch(Exception e){

e.printStackTrace();

}

long between_days=(time2-time1)/(1000*3600);

return Integer.parseInt(String.valueOf(between_days));

}

/**

* 计算两段日期的重合日期

*/

/**

* 计算两段日期的重合日期

* @param str1 开始日期1

* @param str2 结束日期1

* @param str3 开始日期2

* @param str4 结束日期2

* @return

* @throws Exception

*/

public static Map comparisonRQ(String str1,String str2,String str3,String str4) throws Exception {

String mesg = "";

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");

String startdate = "";

String enddate = "";

try {

Date dt1 = df.parse(str1);

Date dt2 = df.parse(str2);

Date dt3 = df.parse(str3);

Date dt4 = df.parse(str4);

if (dt1.getTime()<=dt3.getTime()&&dt3.getTime()<=dt2.getTime()&&dt2.getTime()<=dt4.getTime()) {

mesg = "f";//重合

startdate = str3;

enddate = str2;

}

if (dt1.getTime()>=dt3.getTime()&&dt3.getTime()<=dt2.getTime()&&dt2.getTime()<=dt4.getTime()) {

mesg = "f";//重合

startdate = str1;

enddate = str2;

}

if (dt3.getTime()<=dt1.getTime()&&dt1.getTime()<=dt4.getTime()&&dt4.getTime()<=dt2.getTime()) {

mesg = "f";//重合

startdate = str1;

enddate = str4;

}

if (dt3.getTime()>=dt1.getTime()&&dt1.getTime()<=dt4.getTime()&&dt4.getTime()<=dt2.getTime()) {

mesg = "f";//重合

startdate = str3;

enddate = str4;

}

System.out.println(startdate+"----"+enddate);

}catch (ParseException e) {

e.printStackTrace();

throw new ParseException(e.getMessage(),0);

}catch(Exception e){

e.printStackTrace();

throw new Exception(e);

}

Map map = new HashMap();

map.put("startdate",startdate);

map.put("enddate",enddate);

return map;

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值