zoukankan      html  css  js  c++  java
  • JAVA获得当前时间的几种方法

    JAVA获得当前时间的几种方法   转载:http://blog.csdn.net/zzjjiandan/article/details/8372617

    一. 获取当前系统时间和日期并格式化输出:

    import java.text.SimpleDateFormat;

    public static void main(String[] args) { 
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
    System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
    }
    }

    1、用convert()转化函数:

    String sqlst = "select convert(varchar(10),bookDate,126) as convertBookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'";

    System.out.println(rs.getString("convertBookDate"));

    先要输入两个java包:

    import java.text.SimpleDateFormat;

    定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd);

    sql语句为:String sqlStr = "select bookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'";

    System.out.println(df.format(rs.getDate("bookDate")));

     

    java中获取当前日期和时间的方法

     

    import java.util.Date; 
    import java.util.Calendar; 

    import java.text.SimpleDateFormat; 

    public class TestDate{ 
    public static void main(String[] args){ 
    Date now = new Date(); 
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//可以方便地修改日期格式


    String hehe = dateFormat.format( now ); 
    System.out.println(hehe); 

    Calendar c = Calendar.getInstance();//可以对每个时间域单独修改

     


    int year = c.get(Calendar.YEAR); 
    int month = c.get(Calendar.MONTH); 
    int date = c.get(Calendar.DATE); 
    int hour = c.get(Calendar.HOUR_OF_DAY); 
    int minute = c.get(Calendar.MINUTE); 
    int second = c.get(Calendar.SECOND); 
    System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second); 

    }

     有时候要把String类型的时间转换为Date类型,通过以下的方式,就可以将你刚得到的时间字符串转换为Date类型了。

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

    java.util.Date time=null;
    try {
       time= sdf.parse(sdf.format(new Date()));

    } catch (ParseException e) {

       e.printStackTrace();
    }

     


    java.text.SimpleDateFormat 类 ----时间日期格式化

    java.util.Date类compareTo方法 ----比较日期时间

         java中日期时间的比较要用到java.text.SimpleDateFormat 类和java.util.Date类compareTo方法,SimpleDateFormat类用于时间日期格式化,将日期时间格式化为制定的格 式,compareTo方法用于比较日期时间。以下为我写过的程序片段:

    String data=doc.getItemValueString("fd_ngr");

    //拟稿时间

    String  data4=data.substring(data.indexOf(' '),data.length());

    int panduan=data4.indexOf("-");

    int panduan1=data4.indexOf("/");

    ec_dbsy=vi_dbsy.getAllEntries();

    //构造日期格式yyyy-MM-NN

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

    SimpleDateFormat formatter2 = new SimpleDateFormat("MM/dd/yyyy");

    if(data4.length()!=0)

    {

           if (panduan!=-1){

           try {

                  Date date1 = formatter.parse(data4);

                  Date date0=new Date();

                  Date date2 =formatter.parse("2006-08-31");

                  Date date3=formatter.parse("2006-07-01");

                                                    

                  int number1=date1.compareTo(date2);

                  int number2=date1.compareTo(date3);

                 

                  //返回 0 表示时间日期相同

                  //返回 1 表示日期1>日期2

                  //返回 -1 表示日期1<日期2

                  if( number2==1)

                  {

                         if(number1==-1)

                         {    

                                System.out.println("日期格式符合要求!");

                             System.out.println("日期格式符合要求的yyyy-MM-dd的文档ID是:"+doc.getUniversalID());

                         String mPath="\"+"\10.52.4.4\d$\Program Files\WebSphere\AppServer\installedApps\oa1\oaWeb20061030_war.ear\oaWeb20061030.war\doc_fw";

                         DaglImpl daglImpl = new DaglImpl();

                         daglImpl.addFW(doc,mPath);  //归档处理

                        

                                       }

                                }

                                               

                         } catch (ParseException e) {

                                        e.printStackTrace();

                  }

            }





    java中时间比较大小

    分类: JAVA

    方法一:

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

    String dateBegin=fmt.format(carrierCommand.getDateBegin()); 

    String dateEnd=fmt.format(carrierCommand.getDateEnd()); 

    //如果获得的日期格式不是'2008-05-22',就必须要格式化一下日期 

    String dateBegin = request.getParameter("dateBegin"); 

    String dateEnd = request.getParameter("dateEnd"); 

    if(java.sql.Date.valueOf(dateBegin).after(java.sql.Date.valueOf(dateEnd))){ 

    //起始日期大于结束日期 

    errors.rejectValue("dateEnd", null, "起始日期必须小于结束日期!"); 

    StringBuffer timeBegin = new StringBuffer(); 

    StringBuffer timeEnd = new StringBuffer(); 

    timeBegin.append(request.getParameter("timeBegin")); 

    timeEnd.append(request.getParameter("timeEnd")); 

    timeBegin.append(":00"); 

    timeEnd.append(":00"); 

    if(java.sql.Date.valueOf(dateBegin).equals(java.sql.Date.valueOf(dateEnd))) 

    { //起始日期等于结束日期 

    if(java.sql.Time.valueOf(timeBegin.toString()).equals(java.sql.Time.valueOf 

    (timeEnd.toString())))//时间相同 

    errors.rejectValue("timeEnd", null, "起始与结束日期相同,起始时间必须小于结束时间!"); 

    if(java.sql.Time.valueOf(timeBegin.toString()).after(java.sql.Time.valueOf 

    (timeEnd.toString())))//时间相同 

    errors.rejectValue("timeEnd", null, "起始与结束日期相同,起始时间必须小于结束时间!"); 

    }

    方法二:

    import java.text.DateFormat;

    import java.text.SimpleDateFormat;

    import java.util.Date; 

    /**

    *

    * @author hp

    */

    public class test {

    public static void main(String args[]) {

    int i= compare_date("1995-11-12 15:21", "1999-12-11 09:59");

    System.out.println("i=="+i);

    }

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

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

    try {

    Date dt1 = df.parse(DATE1);

    Date dt2 = df.parse(DATE2);

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

    System.out.println("dt1 在dt2前");

    return 1;

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

    System.out.println("dt1在dt2后");

    return -1;

    } else {

    return 0;

    }

    } catch (Exception exception) {

    exception.printStackTrace();

    }

    return 0;

    }

    }

    方法三:

    比如:现在是2004-03-26 13:31:40

    过去是:2004-01-02 11:30:24

    我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

    java计算时间差及比较时间大小

    比如:现在是2004-03-26 13:31:40

    过去是:2004-01-02 11:30:24

    我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

    一:

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

    try

    {

    Date d1 = df.parse("2004-03-26 13:31:40");

    Date d2 = df.parse("2004-01-02 11:30:24");

    long diff = d1.getTime() - d2.getTime();

    long days = diff / (1000 * 60 * 60 * 24);

    }

    catch (Exception e)

    {

    }

    二:

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

    java.util.Date now = df.parse("2004-03-26 13:31:40");

    java.util.Date date=df.parse("2004-01-02 11:30:24");

    long l=now.getTime()-date.getTime();

    long day=l/(24*60*60*1000);

    long hour=(l/(60*60*1000)-day*24);

    long min=((l/(60*1000))-day*24*60-hour*60);

    long s=(l/1000-day*24*60*60-hour*60*60-min*60);

    System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");

    三:

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

    java.util.Date begin=dfs.parse("2004-01-02 11:30:24");

    java.util.Date end = dfs.parse("2004-03-26 13:31:40");

    long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒

    long day1=between/(24*3600);

    long hour1=between%(24*3600)/3600;

    long minute1=between%3600/60;

    long second1=between%60/60;

    System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");

    ====================================================

    java 比较时间大小

    String s1="2008-01-25 09:12:09";

    String s2="2008-01-29 09:12:11";

    java.text.DateFormat df=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    java.util.Calendar c1=java.util.Calendar.getInstance();

    java.util.Calendar c2=java.util.Calendar.getInstance();

    try

    {

    c1.setTime(df.parse(s1));

    c2.setTime(df.parse(s2));

    }catch(java.text.ParseException e){

    System.err.println("格式不正确");

    }

    int result=c1.compareTo(c2);

    if(result==0)

    System.out.println("c1相等c2");

    else if(result<0)

    System.out.println("c1小于c2");

    else

    System.out.println("c1大于c2");





    JAVA获得当前时间的几种方法

    分类:
     

    package com.***.common.util;

    import java.sql.Timestamp;
    import java.text.ParsePosition;
    import java.text.SimpleDateFormat;
    import java.util.Date;

    import com.ttsoft.framework.util.DateUtil;

    /**
     * Title: 时间获取
     * Description: 当前时间
     * Copyright: Copyright   2010
     * Company: 
     * @author jiq
     * @version 1.0
     */
    public class XJPDateUtil extends DateUtil {
        public static final String[] months = { "一月", "二月", "三月", "四月", "五月", "六月",
         "七月", "八月", "九月", "十月", "十一月", "十二月", };

        public static final String[] quarters = { "一季度", "二季度", "三季度", "四季度" };

        public XJPDateUtil() {
        }

        /**
         * 获取日期字符串。
         * 
         * <pre>
         *  日期字符串格式: yyyyMMdd
         *  其中:
         *      yyyy   表示4位年。
         *      MM     表示2位月。
         *      dd     表示2位日。
         * </pre>
         * 
         * @return String "yyyyMMdd"格式的日期字符串。
         */
        public static String getDate() {
     SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");

     return formatter.format(new Date());
        }

        /**
         * 获取当前年度字符串。
         * 
         * <pre>
         *  日期字符串格式: yyyy
         *  其中:
         *      yyyy   表示4位年。
         * </pre>
         * 
         * @return String "yyyy"格式的当前年度字符串。
         */
        public static String getNowYear() {
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy");

     return formatter.format(new Date());
        }

        /**
         * 获取当前月度字符串。
         * 
         * <pre>
         *  日期字符串格式: MM
         *  其中:
         *      MM   表示4位年。
         * </pre>
         * 
         * @return String "yyyy"格式的当前月度字符串。
         */
        public static String getNowMonth() {
     SimpleDateFormat formatter = new SimpleDateFormat("MM");

     return formatter.format(new Date());
        }

        /**
         * 获取当前月度字符串。
         * 
         * <pre>
         *  日期字符串格式: dd
         *  其中:
         *      dd   表示4位年。
         * </pre>
         * 
         * @return String "yyyy"格式的当前月度字符串。
         */
        public static String getNowDay() {
     SimpleDateFormat formatter = new SimpleDateFormat("dd");

     return formatter.format(new Date());
        }

        /**
         * 获取日期字符串。
         * 
         * <pre>
         *  日期字符串格式: yyyyMMdd
         *  其中:
         *      yyyy   表示4位年。
         *      MM     表示2位月。
         *      dd     表示2位日。
         * </pre>
         * 
         * @param date
         *                需要转化的日期。
         * @return String "yyyyMMdd"格式的日期字符串。
         */
        public static String getDate(Date date) {
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

     return formatter.format(date);
        }

        /**
         * 获取日期字符串。 
         * 
         * <pre>
         *  日期字符串格式: yyyyMMdd
         *  其中:
         *      yyyy   表示4位年。
         *      MM     表示2位月。
         *      dd     表示2位日。
         * </pre>
         * 
         * @param date
         *                需要转化的日期。
         * @return String "yyyyMMdd"格式的日期字符串。
         */
        /**
         * 将指定的日期字符串转化为日期对象
         * 
         * @param dateStr
         *                日期字符串
         * @return java.util.Date
         * @roseuid 3F39FE450385
         */
        public static Date getDate(String dateStr) {
     if (XJPTypeChecker.isDate(dateStr)) { // 日期型
         SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");
         try {
      java.util.Date date = df.parse(dateStr);
      return date;
         } catch (Exception ex) {
      Logger.write("日期格式不符合或者日期为空!请检查!");
      return null;
         } // end try - catch
     } else if (XJPTypeChecker.isDatetime(dateStr)) { // 日期时间型
         SimpleDateFormat df = new SimpleDateFormat(
          "yyyy-MM-dd HH:mm:ss.SSS");
         try {
      java.util.Date date = df.parse(dateStr);
      return date;
         } catch (Exception ex) {
      return null;
         } // end try - catch
     } // end if
     return null;
        }

        /**
         * 获取日期字符串。
         * 
         * <pre>
         *  日期字符串格式: yyyy-MM-dd
         *  其中:
         *      yyyy   表示4位年。
         *      MM     表示2位月。
         *      dd     表示2位日。
         * </pre>
         * 
         * @return String "yyyy-MM-dd"格式的日期字符串。
         */
        public static String getHyphenDate() {
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

     return formatter.format(new Date());
        }

        /**
         * 获取日期字符串。
         * 
         * <pre>
         *  日期字符串格式: yyyy-MM-dd
         *  其中:
         *      yyyy   表示4位年。
         *      MM     表示2位月。
         *      dd     表示2位日。
         * </pre>
         * 
         * @param date
         *                需要转化的日期。
         * @return String "yyyy-MM-dd"格式的日期字符串。
         */
        public static String getHyphenDate(Date date) {
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

     return formatter.format(date);
        }

        /**
         * 将"yyyyMMdd"格式的日期字符串转换为日期对象。
         * 
         * @param source
         *                日期字符串。
         * @return Date 日期对象。
         */
        public static Date parsePlainDate(String source) {
     SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");

     return sdf.parse(source, new ParsePosition(0));
        }

        /**
         * 将“yyyy-MM-dd”格式的日期字符串转换为日期对象。
         * 
         * @param source
         *                日期字符串。
         * @return Date 日期对象。
         */
        public static Date parseHyphenDate(String source) {
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

     return sdf.parse(source, new ParsePosition(0));
        }

        /**
         * 将指定格式的日期字符串转换为日期对象。
         * 
         * @param source
         *                日期字符串。
         * @param pattern
         *                模式。
         * @return Date 日期对象。
         */
        public static Date parseDate(String source, String pattern) {
     SimpleDateFormat sdf = new SimpleDateFormat(pattern);

     return sdf.parse(source, new ParsePosition(0));
        }

        /**
         * 将“yyyy-MM-dd”格式的日期字符串转换为“yyyyMMdd”格式的日期字符串。
         * 
         * @param source
         *                日期字符串。
         * @return String "yyyymmdd"格式的日期字符串。
         */
        public static String toPlainDate(String source) {
     Date date = parseHyphenDate(source);
     SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");

     return formatter.format(date);
        }

        /**
         * 将“yyyyMMdd”格式的日期字符串转换为“yyyy-MM-dd”格式的日期字符串。
         * 
         * @param source
         *                日期字符串。
         * @return String "yyyy-MM-dd"格式的日期字符串。
         */
        public static String toHyphenDate(String source) {
     Date date = parsePlainDate(source);
     SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

     return formatter.format(date);
        }

        /**
         * 获取时间戳,将日期对象转换为时间戳类型。
         * 
         * @param date
         *                日期对象
         * @return Timestamp 时间戳
         */
        public static Timestamp getTimestamp(Date date) {
     return new Timestamp(date.getTime());
        }

        /**
         * 获取时间戳,将当前日期转换为时间戳类型。
         * 
         * @return Timestamp 时间戳
         */
        public static Timestamp getTimestamp() {
     return new Timestamp(new Date().getTime());
        }

        /**
         * 将“yyyyMMdd”格式的日期字符串转换为Timestamp类型的对象。
         * 
         * @param source
         *                日期字符串
         * @return Timestamp 时间戳
         */
        public static Timestamp parseTimestamp(String source) {
     Date date = parsePlainDate(source);

     return getTimestamp(date);
        }

        /**
         * 获得年度周期 <br>
         * Example:<br>
         * XJPDateUtil.getPeriodYear("20040229" , -1);<br>
         * XJPDateUtil.getPeriodYear("20040228" , -1);<br>
         * XJPDateUtil.getPeriodYear("20020230" , 2);<br>
         * 
         * @param source
         *                时间串
         * @param yearPeriod
         *                年度周期 -1代表本时间的上一年度,以次类推。
         * @return String 时间。
         */
        public static String getPeriodYear(String source, int yearPeriod) {
     int p = Integer.parseInt(source.substring(0, 4)) + yearPeriod;
     String newYear = String.valueOf(p)
      + source.substring(4, source.length());
     Date date = parsePlainDate(newYear);
     String s = getDate(date);
     int ny = Integer.parseInt(s);
     int sy = Integer.parseInt(newYear);

     while (ny > sy) {
         sy--;
         ny = Integer.parseInt(getDate(parsePlainDate(String.valueOf(sy))));
     }

     return String.valueOf(sy);
        }

        /**
         * 获取当前日期和时间
         * 
         * @return String
         */
        public static String getCurrentDateStr() {
     Date date = new Date();
     String str = null;
     SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd HH:mm:ss");
     str = df.format(date);
     return str;
        }

        /**
         * 日期相加
         *
         * @param day
         *             天数
         * @return 返回相加后的日期
         */
        public static String addDate(int day) {
     java.util.Calendar c = java.util.Calendar.getInstance();

     c.setTimeInMillis(System.currentTimeMillis() + ((long) day) * 24 * 3600
      * 1000);
     SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd HH:mm:ss");
     return df.format(c.getTime());
        }

        /**
         * 返回毫秒
         * 
         * @param date
         *             日期
         * @return 返回毫秒
         */
        public static long getMillis(java.util.Date date) {
     java.util.Calendar c = java.util.Calendar.getInstance();
     c.setTime(date);
     return c.getTimeInMillis();
        }
        /**
         * 获取当前日期和时间
         * @param format 日期格式 例:yyyy-MM-dd hh:mm
         * @return String
         */
        public static String getNowDate(String format) {
     Date date = new Date();
     String str = null;
     SimpleDateFormat df = new SimpleDateFormat(format);
     str = df.format(date);
     return str;
        }
        /**
         * 将strmon的日期减小一个月
         * @param mon
         * @return
         */
        public static String getReduceMonDate(String strmon) {
     if (strmon != null && !strmon.equals("")) {
         Date mon = parseHyphenDate(strmon);
         mon.setMonth(mon.getMonth() - 1);
         return getHyphenDate(mon);
     } else {
         return "";
     }
        }
      public static String getTimeStr(String dateStr){
     Date date=getDate(dateStr);
     String str = null;
     SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");
     str = df.format(date);
     return str;
        }
      public static String getTimeStr(){
          String str="";
          SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");
      str = df.format(new Date());
      return str;
      }
    }

  • 相关阅读:
    C#中string类型前加@标志的作用
    frame和iframe的区别
    css中float left与float right的使用说明
    一、Linux目录结构
    用户 'IIS APPPOOLClassic .NET AppPool' 登录失败。
    Jquery在线引用地址:
    分析器错误消息: 无法识别的属性“targetFramework”。请注意属性名称区分大小写。
    转:沙漠玫瑰眼影教程
    转:查看oracle数据库允许的最大连接数和当前连接数
    转:怎么用Sql语句获取一个数据库中的所有表的名字
  • 原文地址:https://www.cnblogs.com/zixiaopiaomiao/p/5757040.html
Copyright © 2011-2022 走看看