<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
    很好!不錯!  回復  更多評論
      

    主站蜘蛛池模板: 91视频精品全国免费观看| 亚洲中文字幕日本无线码| 一级毛片a免费播放王色电影 | 精品久久久久久亚洲| jizz免费在线观看| 2048亚洲精品国产| 男女一边桶一边摸一边脱视频免费| 国产黄色一级毛片亚洲黄片大全| 老司机精品免费视频| 久久亚洲一区二区| 5g影院5g天天爽永久免费影院 | 免费v片在线观看品善网| 国产亚洲精品美女| 在线观看午夜亚洲一区| a级片免费观看视频| 亚洲图片在线观看| 国产成人精品免费视频大| 特级毛片aaaa免费观看| 91在线视频免费观看| 性感美女视频免费网站午夜| 国内精品久久久久影院亚洲| 免费的一级黄色片| 国产精品免费一区二区三区| 久久久久亚洲AV成人无码网站| 亚洲免费视频观看| 精品久久久久久亚洲综合网| 亚洲伊人久久精品影院| 无码国产精品一区二区免费vr | 亚洲熟妇AV一区二区三区浪潮| 四虎永久免费网站免费观看| 中文字幕手机在线免费看电影| 久久亚洲AV成人无码电影| 好吊妞在线新免费视频| 九九热久久免费视频| 亚洲国产精品久久久久秋霞影院| 四虎影院免费视频| 免费看无码特级毛片| 亚洲国产欧美一区二区三区 | 亚洲人成网77777色在线播放| 国产精彩免费视频| 美女黄色免费网站|