<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    精彩的人生

    好好工作,好好生活

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      147 Posts :: 0 Stories :: 250 Comments :: 0 Trackbacks

    如果想要取得系統的時間,可以使用System.currentTimeMillis()方法,例如:


    • DateDemo.java

    public class DateDemo {
    ????public static void main(String[]
    args) {
    ????????System.out.println(System.currentTimeMillis());
    ????}
    }



    執行結果會顯示從1970年1月1日開始到取得系統時間為止所經過的毫秒數,例如1115346430703這個數字,但這樣的數字沒有人確切了解它的意 義是什么,您可以使用Date類別來讓這個數字變的更有意義一些,例如:


    • DateDemo.java

    import java.util.Date;

    public class DateDemo {
    ????public static void main(String[]
    args) {
    ????????Date date = new Date();
    ????????
    ????????System.out.println(date.toString());
    ????????System.out.println(date.getTime());
    ????}
    }



    執行的結果如下:

    ??

    Fri May 06 10:31:13 GMT+08:00 2005
    ??1115346673531

    ??

    當您生成Date對象時,實際上它會使用System.currentTimeMillis()來取得系統時間,而您使用
    toString()方法時,會將取得的1970年1月1日至今的毫秒數轉為dow mon dd hh:mm:ss zzz yyyy的格式,分別是:「星期 月 日 時:分:秒 公元」;使用Date的getTime()方法則可以取得毫秒數。

    如果您想要對日期時間作格式設定,則可以使用DateFormat來作格式化,先來看看它的子類SimpleDateFormat如何使用:
    • DateDemo.java

    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;

    public class DateDemo {
    ????public static void main(String[]
    args) {
    ????????Date date = new Date();

    ????????DateFormat dateFormat =
    ????????????new
    SimpleDateFormat("EE-MM-dd-yyyy");
    ????????
    ????????System.out.println(dateFormat.format(date));
    ????}
    }



    執行結果:

    ??

    星期五-05-06-2005

    ??

    DateFormat會依計算機上的區域設定顯示時間格式,EE表示星期,MM表示月份、dd表示日期,而yyyy是公元,每個字符的設定都各有其意義,您
    可以參考 SimpleDateFormat 的API說明了解每個字符設定的意義。

    您也可以直接從DateFormat指定格式生成DateFormat的實例,例如:
    • DateDemo.java

    import java.text.DateFormat;
    import java.util.Date;

    public class DateDemo {
    ????public static void main(String[]
    args) {
    ????????Date date = new Date();

    ????????DateFormat shortFormat =
    ????????????DateFormat.getDateTimeInstance(
    ????????????????DateFormat.SHORT,
    DateFormat.SHORT);

    ????????DateFormat mediumFormat =
    ????????????DateFormat.getDateTimeInstance(
    ????????????????DateFormat.MEDIUM,
    DateFormat.MEDIUM);

    ????????DateFormat longFormat =
    ????????????DateFormat.getDateTimeInstance(
    ????????????????DateFormat.LONG, DateFormat.LONG);

    ????????DateFormat fullFormat =
    ????????????DateFormat.getDateTimeInstance(
    ????????????????DateFormat.FULL,
    DateFormat.FULL);

    ????????System.out.println(shortFormat.format(date));
    ????????System.out.println(mediumFormat.format(date));
    ????????System.out.println(longFormat.format(date));
    ????????System.out.println(fullFormat.format(date));
    ????}
    }



    在使用getDateTimeInstance()取得DateFormat實例時,可以指定的參數是日期格式與時間格式,以上所指定的格式依訊息詳細度 區分,執行結果如下:

    2005/5/6 上午 10:45
    2005/5/6 上午 10:45:25
    2005年5月6日 上午10時45分25秒
    2005年5月6日 星期五 上午10時45分25秒 GMT+08:00??


    您也可以使用getDateInstance()取得DateFormat實 例,并同時指定日期的區域顯示方式,例如:


    • DateDemo.java????


    import java.text.DateFormat;
    import java.util.Date;
    import java.util.Locale;

    public class DateDemo {
    ????public static void main(String[]
    args) {
    ????????Date date = new Date();

    ????????Locale locale = new
    Locale("en", "US");
    ????????DateFormat shortFormat =
    ????????????DateFormat.getDateInstance(
    ????????????????DateFormat.SHORT,
    locale);

    ????????DateFormat mediumFormat =
    ????????????DateFormat.getDateInstance(
    ????????????????DateFormat.MEDIUM,
    locale);

    ????????DateFormat longFormat =
    ????????????DateFormat.getDateInstance(
    ????????????????DateFormat.LONG, locale);

    ????????DateFormat fullFormat =
    ????????????DateFormat.getDateInstance(
    ????????????????DateFormat.FULL, locale);

    ????????System.out.println(shortFormat.format(date));
    ????????System.out.println(mediumFormat.format(date));
    ????????System.out.println(longFormat.format(date));
    ????????System.out.println(fullFormat.format(date));
    ????}
    }



    這邊指定了美國的時間顯示方式,執行結果如下:

    ??

    5/6/05
    ??May 6, 2005
    ??May 6, 2005
    ??Friday, May 6, 2005


    -------------------------------------------------------------------------------------------------

    1. 怎樣計算兩個時間之間的間隔?

    間隔=Date1.getTime()-Date2.getTime();得出來的是毫秒數.
    除1000是秒,再除60是分,再除60是小時..............................

    記住java標準庫中所有時間類都以此為基礎轉化的,只是他寫好了一些
    轉化的方法給你用而已.但都離不開這個毫秒數為基礎.

    2. t=Calendar.getInstance();m=t.get(t.MONTH)+1;這里為什么要加一?

    在java語言里,date的month的取值范圍是:0~11,與人們的自然表達上相差1。

    3. 系統時間與當前日期的區別?

    系統時間確切的說應該是
    System.currentTimeMillis();
    new Date()是當前日期,雖然它getTime();和System.currentTimeMillis();
    一樣,但System.currentTimeMillis();

    4. 如何計算兩個日期的天數差值?

    long beginTime = beginDate.getTime();
    long endTime2 = endDate.getTime();
    long betweenDays = (long)((endTime - beginTime) / (1000 * 60 * 60 *24) + 0.5);

    5. 如何比較日期時間大小?

    第一種方法:
    use Calendar object to compare
    java.util.Calendar class can be used to compare date. In order to do this,
    you guy should parse that string into int year, month, day and construct a
    Calendar object, and then do comparison.

    Below is a sample

    StringTokenizer token = new StringTokenizer(your string,"-");
    int year = Integer.parseInt(token.nextToken());
    int month = Integer.parseInt(token.nextToken());
    int day = Integer.parseInt(token.nextToken());
    Calendar date = Calendar.getInstance();
    date.set(year,month,day);
    Calendar today = Calendar.getInstacne();
    if(date.after(today)){
    //......
    }
    第二種方法
    Date nowDate=new Date();//當前時間\r
    long nowTime=nowDate.getTime;
    long lastTime=userTime.longValue();//以前的時間\r
    long time=nowTime-lastTime;//時間相減比較。
    if(time>(long)60000)//1分鐘{}

    另外可用以下參考
    用時間戳,Date.getTime()可以把當前時間改成時間戳,
    用CompareTo();
    用before(),after(),equals();

    6. 格式化日期的問題\r

    目的:
    第一次求日期
    java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd");
    String riqi=formatter.format(currentTime_1);
    第二次求時間\r
    java.text.DateFormat format1 = new java.text.SimpleDateFormat("hhmmss");
    java.util.Date currentTime_2 = new java.util.Date();
    String shijian=format1.format(currentTime_2);
    得到的結果是
    2002-02-19和115324(11點53分24秒)

    實現:
    java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd-H-mm-ss");
    java.util.Date currentTime_1 = new java.util.Date();
    String str_date = formatter.format(currentTime_1);
    StringTokenizer token = new StringTokenizer(str_date,"-");
    String year = token.nextToken();
    String month= token.nextToken();
    String day = token.nextToken();
    String hh = token.nextToken();
    String mm = token.nextToken();
    String ss = token.nextToken();
    String riqi=year+"年\\"+month+"月"+day+"日"+" "+hh+"點\\"+mm+"分"+ss+"秒\\";
    String newdir=year+month+day;
    String wenjian = hh+mm+ss;

    7. 怎么得到一個月的天數?

    java.util.Calendar date = java.util.Calendar.getInstance();
    System.out.println(date.getActualMaximum(date.DAY_OF_MONTH));


    ------------------------------------------------------------------------------------------------

    ?
    取得指定月份的第一天與取得指定月份的最后一天??
    ?????? /**??
    ???????? *??取得指定月份的第一天??
    ???????? *??
    ???????? *??@param??strdate??String??
    ???????? *??@return??String??
    ???????? */??
    ?????? public??String??getMonthBegin(String??strdate)??
    ?????? {??
    ?????????????? java.util.Date??date??=??parseFormatDate(strdate);??
    ?????????????? return??formatDateByFormat(date,"yyyy-MM")??+??"-01";??
    ?????? }??

    ?????? /**??
    ???????? *??取得指定月份的最后一天??
    ???????? *??
    ???????? *??@param??strdate??String??
    ???????? *??@return??String??
    ???????? */??
    ?????? public??String??getMonthEnd(String??strdate)??
    ?????? {??
    ?????????????? java.util.Date??date??=??parseFormatDate(getMonthBegin(strdate));??
    ?????????????? Calendar??calendar??=??Calendar.getInstance();??
    ?????????????? calendar.setTime(date);??
    ?????????????? calendar.add(Calendar.MONTH,1);??
    ?????????????? calendar.add(Calendar.DAY_OF_YEAR,??-1);??
    ?????????????? return??formatDate(calendar.getTime());??
    ?????? }??

    ?????? /**??
    ???????? *??常用的格式化日期??
    ???????? *??
    ???????? *??@param??date??Date??
    ???????? *??@return??String??
    ???????? */??
    ?????? public??String??formatDate(java.util.Date??date)??
    ?????? {??
    ?????????????? return??formatDateByFormat(date,"yyyy-MM-dd");??
    ?????? }??

    ?????? /**??
    ???????? *??以指定的格式來格式化日期??
    ???????? *??
    ???????? *??@param??date??Date??
    ???????? *??@param??format??String??
    ???????? *??@return??String??
    ???????? */??
    ?????? public??String??formatDateByFormat(java.util.Date??date,String??format)??
    ?????? {??
    ?????????????? String??result??=??"";??
    ?????????????? if(date??!=??null)??
    ?????????????? {??
    ?????????????????????? try??
    ?????????????????????? {??
    ?????????????????????????????? SimpleDateFormat??sdf??=??new??SimpleDateFormat(format);??
    ?????????????????????????????? result??=??sdf.format(date);??
    ?????????????????????? }??
    ?????????????????????? catch(Exception??ex)??
    ?????????????????????? {??
    ?????????????????????????????? LOGGER.info("date:"??+??date);??
    ?????????????????????????????? ex.printStackTrace();??
    ?????????????????????? }??
    ?????????????? }??
    ?????????????? return??result;??
    ?????? }??
    ---------------------------------------------------------------??

    package??com.app.util;??

    /**??
    *??日期操作??
    *????
    *??@author??xxx??
    *??@version??2.0??jdk1.4.0??tomcat5.1.0??*??Updated??Date:2005/03/10??
    */??
    public??class??DateUtil??{??
    ?????????? /**??
    ???????????? *??格式化日期??
    ???????????? *????
    ???????????? *??@param??dateStr??
    ???????????? *????????????????????????字符型日期??
    ???????????? *??@param??format??
    ???????????? *????????????????????????格式??
    ???????????? *??@return??返回日期??
    ???????????? */??
    ?????????? public??static??java.util.Date??parseDate(String??dateStr,??String??format)??{??
    ?????????????????????? java.util.Date??date??=??null;??
    ?????????????????????? try??{??
    ?????????????????????????????????? java.text.DateFormat??df??=??new??java.text.SimpleDateFormat(format);??
    ?????????????????????????????????? String??dt=Normal.parse(dateStr).replaceAll(??
    ?????????????????????????????????????????????????????????? "-",??"/");??
    ?????????????????????????????????? if((!dt.equals(""))&&(dt.length()<format.length())){??
    ?????????????????????????????????????????????? dt+=format.substring(dt.length()).replaceAll("[YyMmDdHhSs]","0");??
    ?????????????????????????????????? }??
    ?????????????????????????????????? date??=??(java.util.Date)??df.parse(dt);??
    ?????????????????????? }??catch??(Exception??e)??{??
    ?????????????????????? }??
    ?????????????????????? return??date;??
    ?????????? }??

    ?????????? public??static??java.util.Date??parseDate(String??dateStr)??{??
    ?????????????????????? return??parseDate(dateStr,??"yyyy/MM/dd");??
    ?????????? }??

    ?????????? public??static??java.util.Date??parseDate(java.sql.Date??date)??{??
    ?????????????????????? return??date;??
    ?????????? }??
    ????????????
    ?????????? public??static??java.sql.Date??parseSqlDate(java.util.Date??date)??{??
    ?????????????????????? if??(date??!=??null)??
    ?????????????????????????????????? return??new??java.sql.Date(date.getTime());??
    ?????????????????????? else??
    ?????????????????????????????????? return??null;??
    ?????????? }??

    ?????????? public??static??java.sql.Date??parseSqlDate(String??dateStr,??String??format)??{??
    ?????????????????????? java.util.Date??date??=??parseDate(dateStr,??format);??
    ?????????????????????? return??parseSqlDate(date);??
    ?????????? }??

    ?????????? public??static??java.sql.Date??parseSqlDate(String??dateStr)??{??
    ?????????????????????? return??parseSqlDate(dateStr,??"yyyy/MM/dd");??
    ?????????? }??

    ????????????
    ?????????? public??static??java.sql.Timestamp??parseTimestamp(String??dateStr,??
    ?????????????????????????????????? String??format)??{??
    ?????????????????????? java.util.Date??date??=??parseDate(dateStr,??format);??
    ?????????????????????? if??(date??!=??null)??{??
    ?????????????????????????????????? long??t??=??date.getTime();??
    ?????????????????????????????????? return??new??java.sql.Timestamp(t);??
    ?????????????????????? }??else??
    ?????????????????????????????????? return??null;??
    ?????????? }??

    ?????????? public??static??java.sql.Timestamp??parseTimestamp(String??dateStr)??{??
    ?????????????????????? return??parseTimestamp(dateStr,??"yyyy/MM/dd??HH:mm:ss");??
    ?????????? }??

    ?????????? /**??
    ???????????? *??格式化輸出日期??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@param??format??
    ???????????? *????????????????????????格式??
    ???????????? *??@return??返回字符型日期??
    ???????????? */??
    ?????????? public??static??String??format(java.util.Date??date,??String??format)??{??
    ?????????????????????? String??result??=??"";??
    ?????????????????????? try??{??
    ?????????????????????????????????? if??(date??!=??null)??{??
    ?????????????????????????????????????????????? java.text.DateFormat??df??=??new??java.text.SimpleDateFormat(format);??
    ?????????????????????????????????????????????? result??=??df.format(date);??
    ?????????????????????????????????? }??
    ?????????????????????? }??catch??(Exception??e)??{??
    ?????????????????????? }??
    ?????????????????????? return??result;??
    ?????????? }??

    ?????????? public??static??String??format(java.util.Date??date)??{??
    ?????????????????????? return??format(date,??"yyyy/MM/dd");??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回年份??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回年份??
    ???????????? */??
    ?????????? public??static??int??getYear(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.YEAR);??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回月份??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回月份??
    ???????????? */??
    ?????????? public??static??int??getMonth(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.MONTH)??+??1;??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回日份??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回日份??
    ???????????? */??
    ?????????? public??static??int??getDay(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.DAY_OF_MONTH);??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回小時??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回小時??
    ???????????? */??
    ?????????? public??static??int??getHour(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.HOUR_OF_DAY);??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回分鐘??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回分鐘??
    ???????????? */??
    ?????????? public??static??int??getMinute(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.MINUTE);??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回秒鐘??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回秒鐘??
    ???????????? */??
    ?????????? public??static??int??getSecond(java.util.Date??date)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTime(date);??
    ?????????????????????? return??c.get(java.util.Calendar.SECOND);??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回毫秒??
    ???????????? *????
    ???????????? *??@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??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回字符型日期??
    ???????????? */??
    ?????????? public??static??String??getDate(java.util.Date??date)??{??
    ?????????????????????? return??format(date,??"yyyy/MM/dd");??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回字符型時間??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回字符型時間??
    ???????????? */??
    ?????????? public??static??String??getTime(java.util.Date??date)??{??
    ?????????????????????? return??format(date,??"HH:mm:ss");??
    ?????????? }??

    ?????????? /**??
    ???????????? *??返回字符型日期時間??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回字符型日期時間??
    ???????????? */??
    ?????????? public??static??String??getDateTime(java.util.Date??date)??{??
    ?????????????????????? return??format(date,??"yyyy/MM/dd??HH:mm:ss");??
    ?????????? }??

    ?????????? /**??
    ???????????? *??日期相加??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@param??day??
    ???????????? *????????????????????????天數??
    ???????????? *??@return??返回相加后的日期??
    ???????????? */??
    ?????????? public??static??java.util.Date??addDate(java.util.Date??date,??int??day)??{??
    ?????????????????????? java.util.Calendar??c??=??java.util.Calendar.getInstance();??
    ?????????????????????? c.setTimeInMillis(getMillis(date)??+??((long)??day)??*??24??*??3600??*??1000);??
    ?????????????????????? return??c.getTime();??
    ?????????? }??

    ?????????? /**??
    ???????????? *??日期相減??
    ???????????? *????
    ???????????? *??@param??date??
    ???????????? *????????????????????????日期??
    ???????????? *??@param??date1??
    ???????????? *????????????????????????日期??
    ???????????? *??@return??返回相減后的日期??
    ???????????? */??
    ?????????? public??static??int??diffDate(java.util.Date??date,??java.util.Date??date1)??{??
    ?????????????????????? return??(int)??((getMillis(date)??-??getMillis(date1))??/??(24??*??3600??*??1000));??
    ?????????? }??????????????
    }??
    ------------------------------------------------------------------------------------------------------------------

    來個簡單點的,也許有點用??

    Calendar??now??=??Calendar.getInstance();??
    int??year??=??now.get(Calendar.YEAR);??
    int??date??=??now.get(Calendar.DAY_OF_MONTH);??
    int??month??=??now.get(Calendar.MONTH)??+??1;??
    int??hour??=??now.get(Calendar.HOUR);??
    int??min??=??now.get(Calendar.MINUTE);??
    int??sec??=??now.get(Calendar.SECOND);??



    轉自http://www.513pc.net/bbs/dispbbs.asp?boardid=4&id=239&star=1&page=1

    posted on 2006-04-03 10:56 hopeshared 閱讀(2460) 評論(1)  編輯  收藏 所屬分類: Java

    Feedback

    # re: 轉:如何在JAVA中使用日期 2008-01-14 21:59 java綜合網
    java綜合網
    http://www.javazh.cn
    很好!不錯!  回復  更多評論
      

    主站蜘蛛池模板: 日韩免费a级在线观看| 亚洲人成无码网站| 国产裸模视频免费区无码| a级亚洲片精品久久久久久久| 亚洲人成人77777在线播放| 日韩电影免费在线观看网址| 永久在线免费观看| 久久久久亚洲AV成人网人人软件| 亚洲欧洲久久精品| 久久福利青草精品资源站免费| 日韩中文字幕免费| 久久亚洲AV成人无码国产电影| 最近2018中文字幕免费视频| 中文字幕亚洲不卡在线亚瑟| 精品熟女少妇aⅴ免费久久| 男人的天堂亚洲一区二区三区 | 中国国语毛片免费观看视频| 女人被弄到高潮的免费视频 | 久久这里只精品99re免费| 亚洲国产香蕉人人爽成AV片久久 | 91情侣在线精品国产免费| 亚洲成人精品久久| 中文字幕高清免费不卡视频| 久久久综合亚洲色一区二区三区| 精品香蕉在线观看免费| 亚洲午夜视频在线观看| a毛片免费观看完整| 亚洲精品国产精品乱码不卞| a毛片免费全部播放完整成| 国产成人精品日本亚洲11| 亚洲人成免费网站| 亚洲视频欧洲视频| 久久久久国色av免费看| 国产精品亚洲а∨无码播放| 中文字字幕在线高清免费电影| 精品日韩亚洲AV无码一区二区三区| 国产白丝无码免费视频| 亚洲综合精品第一页| 在线观看91精品国产不卡免费| 在线观看免费视频一区| 亚洲色大成网站WWW国产|