Android处理时间各种方法汇总

发布时间 - 2026-01-11 02:35:49    点击率:

本文实例为大家分享了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<String,Object> 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<String,Object> map = new HashMap<String,Object>();
    map.put("startdate", startdate);
    map.put("enddate", enddate);
    return map;
 }

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


# Android  # 处理时间  # 解析android中系统日期时间的获取  # android获取时间差的方法  # Android获取通话时间实例分析  # Android获取系统时间以及网络时间  # Android调用系统时间格式显示时间信息  # Android中日期与时间设置控件用法实例  # 探讨:如何修改Android超时休眠时间  # Android开发之时间日期操作实例  # Android 动态的显示时间  # Android 仿微信聊天时间格式化显示功能  # 两段  # 当天  # 大家分享  # 具体内容  # 大家多多  # getDate  # date  # null  # ParseException  # catch  # parse  # yyyy  # getriqi  # MM  # ss  # getalldate  # dd  # param  # getTime  # endDate 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  如何快速搭建自助建站会员专属系统?  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  黑客如何通过漏洞一步步攻陷网站服务器?  JavaScript数据类型有哪些_如何准确判断一个变量的类型  如何自定义建站之星网站的导航菜单样式?  如何快速辨别茅台真假?关键步骤解析  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  JavaScript如何实现路由_前端路由原理是什么  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  如何快速查询网站的真实建站时间?  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  如何用花生壳三步快速搭建专属网站?  linux top下的 minerd 木马清除方法  Laravel如何实现数据库事务?(DB Facade示例)  Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制  MySQL查询结果复制到新表的方法(更新、插入)  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  如何快速搭建高效服务器建站系统?  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  Android自定义控件实现温度旋转按钮效果  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  如何在Tomcat中配置并部署网站项目?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  如何快速启动建站代理加盟业务?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  如何在云主机快速搭建网站站点?  googleplay官方入口在哪里_Google Play官方商店快速入口指南  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  Android GridView 滑动条设置一直显示状态(推荐)  jQuery中的100个技巧汇总  如何用AI帮你把自己的生活经历写成一个有趣的故事?  想要更高端的建设网站,这些原则一定要坚持!