zoukankan      html  css  js  c++  java
  • Java获取今天/昨天/前天的某个时间点的方法

    开发时需要把如“今天 12:15” "昨天 21:21" "前天 03: 02"之类的String转换成Date,所以写了个方法,有更好的写法的话欢迎留言

     1 //获取今天、昨天、前天的某个时间的方法, 如"昨天 21:21" "前天 15:15"
     2     private static Date getFormatDate(String updated) throws Exception{
     3         if (updated.substring(0, 2).equals("今天")){
     4             String partOfDate = updated.substring(3);
     5             Calendar calendar = Calendar.getInstance();
     6             calendar.setTime(new Date());
     7             calendar.set(Calendar.HOUR_OF_DAY, 0);
     8             calendar.set(Calendar.MINUTE, 0);
     9             calendar.set(Calendar.SECOND, 0);
    10             SimpleDateFormat todaySdf = new SimpleDateFormat("yyyy-MM-dd");
    11             String today = todaySdf.format(calendar.getTime());
    12             String finalString = today + " " + partOfDate;
    13             SimpleDateFormat finalSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    14             return finalSdf.parse(finalString);
    15         }else if (updated.substring(0,2).equals("昨天")){
    16             String partOfDate = updated.substring(3);
    17             Calendar calendar = Calendar.getInstance();
    18             calendar.setTime(new Date());
    19             calendar.add(Calendar.DATE, -1);
    20             calendar.set(Calendar.HOUR_OF_DAY, 0);
    21             calendar.set(Calendar.MINUTE, 0);
    22             calendar.set(Calendar.SECOND, 0);
    23             SimpleDateFormat yesterdaySdf = new SimpleDateFormat("yyyy-MM-dd");
    24             String yesterday = yesterdaySdf.format(calendar.getTime());
    25             String finalString = yesterday + " " + partOfDate;
    26             SimpleDateFormat finalSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    27             return finalSdf.parse(finalString);
    28         }else if (updated.substring(0, 2).equals("前天")){
    29             String partOfDate = updated.substring(3);
    30             Calendar calendar = Calendar.getInstance();
    31             calendar.setTime(new Date());
    32             calendar.add(Calendar.DATE, -2);
    33             calendar.set(Calendar.HOUR_OF_DAY, 0);
    34             calendar.set(Calendar.MINUTE, 0);
    35             calendar.set(Calendar.SECOND, 0);
    36             SimpleDateFormat daysBeforeSdf = new SimpleDateFormat("yyyy-MM-dd");
    37             String daysBefore = daysBeforeSdf.format(calendar.getTime());
    38             String finalString = daysBefore + " " + partOfDate;
    39             SimpleDateFormat finalSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    40             return finalSdf.parse(finalString);
    41         }else {
    42             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    43             return sdf.parse(updated);
    44         }
    45     }

    Written on Dec. 14th, 2019

  • 相关阅读:
    Python2 升级Python3
    'builtin_function_or_method' object has no attribute 'translate'
    antd-mobile的DatePicker分钟精度半小时
    Windows10远程报错:由于CredSSP加密Oracle修正
    Nginx配置
    MySQL之索引优化
    Ubuntu下删除VMware的方法
    控制窗体的显示和隐藏
    os模块
    树莓派 使用3.5耳机口输出音频
  • 原文地址:https://www.cnblogs.com/LittleMike/p/12038462.html
Copyright © 2011-2022 走看看