zoukankan      html  css  js  c++  java
  • Java日期获取需求大全

    刚进公司,作为熟悉技术,为公司做了一个小的点餐系统的网站,其中大量用到了时间日期作为唯一标示或是显示设置。特总结了一下和大家分享。

    package com.lucis.ordering.Utils;

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;

    /**
    * Created by JayZhao on 2015/8/17 0017.
    * 系统日期获取控件
    */
    public class DateUtil {

    //实例化date对象
    Date date = new Date();
    //格式化成年月日式 date 类型
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    //格式化年月日 时分秒 date 类型
    SimpleDateFormat detailsDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    //解析成年-月-日 格式date形数据
    public Date SimpleSystemTime(){
    String now =new SimpleDateFormat("yyyy-MM-dd").format(date);
    try {
    return simpleDateFormat.parse(now);
    } catch (ParseException e) {
    e.printStackTrace();
    }
    return date;
    }
    //解析成年-月-日 格式String形数据
    public String SimpleSystemTimeString(){
    return new SimpleDateFormat("yyyy-MM-dd").format(date);
    }
    //解析成年-月-日 时:分:秒 格式date形数据
    public Date DetailSystemTime(){
    String now =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
    try {
    return detailsDateFormat.parse(now);
    } catch (ParseException e) {
    e.printStackTrace();
    }
    return date;
    }
    //解析成年-月-日 星期几 格式date形数据
    public String MiddleSystemTime() {
    String now =new SimpleDateFormat("yyyy-MM-dd").format(date);
    String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    if (w < 0) {
    w = 0;
    }
    return now+" "+weekDays[w];
    }
    //根据时间获取当日星期
    public int WeekDays(String day){

    Calendar cal = Calendar.getInstance();
    try {
    cal.setTime(simpleDateFormat.parse(day));
    } catch (ParseException e) {
    e.printStackTrace();
    }
    int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    return w;
    }
    //解析当前日期前几天成 年-月-日 格式的date数据
    public String Yesterday(){
    Calendar calendar = Calendar.getInstance();//此时打印它获取的是系统当前时间
    calendar.add(Calendar.DATE, -1); //得到前一天
    return new SimpleDateFormat("yyyy-MM-dd").format(calendar.getTime());
    }
    //解析某一天的前几天
    public String getSpecifiedDayBefore(String specifiedDay,int d){
    Calendar c = Calendar.getInstance();
    Date date=null;
    try {
    date = new SimpleDateFormat("yy-MM-dd").parse(specifiedDay);
    } catch (ParseException e) {
    e.printStackTrace();
    }
    c.setTime(date);
    int day=c.get(Calendar.DATE);
    c.set(Calendar.DATE,day-d);
    String dayBefore=new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
    return dayBefore;
    }
    //比较两个时间大小
    public boolean compare(String date1,String date2){
    boolean result = false;
    try {
    result = simpleDateFormat.parse(date1).before(simpleDateFormat.parse(date2));
    } catch (ParseException e) {
    e.printStackTrace();
    }
    return result;
    }
    //根据一天获取一周时间
    public String testDate(String newtime) {
    String dayNames[] = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    int week1[] = {7,1,2,3,4,5,6};
    Calendar c = Calendar.getInstance();// 获得一个日历的实例
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    try {
    c.setTime(sdf.parse(newtime));
    } catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    String a=dayNames[c.get(Calendar.DAY_OF_WEEK)-1];
    int b=week1[c.get(Calendar.DAY_OF_WEEK)-1];
    if(b!=7){
    c.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
    }else{
    c.add(Calendar.WEEK_OF_MONTH, -1);
    c.set(Calendar.DAY_OF_WEEK, 2);
    }
    return a;
    }

    //获取某一天的下周一
    public String getNextMonday(Date date){
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    int week = cal.get(Calendar.DAY_OF_WEEK);
    if(week>2){
    cal.add(Calendar.DAY_OF_MONTH,-(week-2)+7);
    }else{
    cal.add(Calendar.DAY_OF_MONTH,2-week+7);
    }
    return new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
    }

    //获取某一天的本周一
    public String getMonday(Date date){
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    int week = cal.get(Calendar.DAY_OF_WEEK);
    if(week>2){
    cal.add(Calendar.DAY_OF_MONTH,-(week-2));
    }else{
    cal.add(Calendar.DAY_OF_MONTH,2-week);
    }
    return new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
    }
    }
  • 相关阅读:
    Linux mint OS
    Patroni 修改配置
    0x10
    01
    split
    IO流18 --- RandomAccessFile实现数据的读写操作 --- 技术搬运工(尚硅谷)
    IO流16 --- 对象流操作字符串 --- 技术搬运工(尚硅谷)
    IO流15 --- 数据流操作Java语言的基本数据类型 --- 技术搬运工(尚硅谷)
    IO流14 --- 打印流的使用 --- 技术搬运工(尚硅谷)
    JDBC2 --- 获取数据库连接的方式二 --- 技术搬运工(尚硅谷)
  • 原文地址:https://www.cnblogs.com/ccuzhaozhihao/p/4785528.html
Copyright © 2011-2022 走看看