zoukankan      html  css  js  c++  java
  • 也经常用到日期和时间,总是出错,记录一下。

     JAVA,也经常用到时间,总是出错,记录一下:


    例如说,以这样的形式从数据库那边拿到了消息:
    /*
    * Get System Date/Time
    */
    pstmt = connection
    .prepareStatement("SELECT TO_CHAR(sysdate,'YYYY-MM-DD HH24:MI:SS') FROM DUAL");
    ResultSet rset1 = pstmt.executeQuery();

    String datetime = "";
    if (rset1.next()) {
    datetime = rset1.getString(1);
    }
    if (pstmt != null)
    pstmt.close();
    if (rset1 != null)
    rset1.close();

    datetime 是这个形式的----》2014-05-22 15:39:20


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

    Calendar FaultCalendar = null;
    FaultCalendar=FaultCalendar.getInstance();
    FaultCalendar.setTime(FalutDate);


    Calendar nowCalendar=null;
    nowCalendar=nowCalendar.getInstance();
    System.out.println(datetime);
    -------------------------------------------------------------------------------------------
    由于datetime 是这个形式的----》2014-05-22 15:39:20
    转换的话必须使用这种形式转换,否则转换不了,会出错

    Date dt=sdf1.parse(datetime);
    nowCalendar.setTime(dt);

    // 采用这种形式绝对错误: Date dt=new Date(datetime); 报错为:java.lang.IllegalArgumentException
    -------------------------------------------------------------------------------------------
    //getTimeInMillis() 这个函数可以计算当前时间到一个固定时间点(from the epoch)的毫秒个数

    long nowMillistTime=nowCalendar.getTimeInMillis();
    long FaultMillisTime=FaultCalendar.getTimeInMillis();
    long betweenMillistTime=nowMillistTime-FaultMillisTime;

    betweenDay就是得出两个时间点之间相差的天数。

    int betweenDay=0;
    if(betweenMillistTime<0) betweenDay=0;
    else {
    betweenDay=(int) (betweenMillistTime/(1000*3600*24));
    }
    int finalDay=PmMaxDuration-betweenDay-1;
    //采用这种办法,没有对超过期限的做出应有的处理,可能会出现负值

  • 相关阅读:
    Codeforces Round #709 (Div. 2, based on Technocup 2021 Final Round)
    Codeforces Round #708 (Div. 2)
    Educational Codeforces Round 106 (Rated for Div. 2)
    ccf csp 202012-1
    带配额的文件系统 (带模拟)
    阔力梯的树
    Codeforces Round #707 (Div. 2, based on Moscow Open Olympiad in Informatics)
    如何获取某个网站IP地址?
    C++开发者眼中的Java关键字abstract
    Java代码中如何获文件名和行号等源码信息?
  • 原文地址:https://www.cnblogs.com/zdcaolei/p/3745793.html
Copyright © 2011-2022 走看看