熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Java--日期的使用

2013-11-23 19:31:04  來源: Java核心技術 

  Date 類: 最基礎的日期時間類返回一個相對日期的毫秒數精確到毫秒但不支持日期的國際化和分時區顯示

  Calender類: 相對於Date更加強大的時間類是抽象類提供了常規的日期修改功能和國際化支持

  GregorianCalendar類: 提供處理日期的方法用於計算日期是Calendar類的子類有用的是有個判斷閏年的方法

  DateFormat類: 可以接受字符串輸入 輸出提供了將日期/時間信息進行格式化處理的功能

  SimpleDateFormat類: 功能更強大的日期時間格式化類自定義格式化日期和時間

  javautilLocale類 描述特定的地理政治文化上的地區Locale對象主要封裝了地區語言種類兩方面

  獲取當前時間

  public String GetCurTime()//獲得當前時間

  {

  Date now=new Date();

  return nowgetHours()+:+nowgetMinutes()+:+nowgetSeconds();

  }

  public String GetCurDate()//獲得當前日期

  {

  Calendar cal=CalendargetInstance();

  return calget(CalendarYEAR)++(calget(CalendarMONTH)+)++calget(CalendarDATE)+;

  }

  獲取一月前時間

  calendar = CalendargetInstance();

  calendaradd(CalendarMONTH );

  獲取一年前時間

  calendar = CalendargetInstance();

  calendaradd(CalendarYEAR );

  獲取相對日期的毫秒數

  Calendar calendar = CalendargetInstance();

  long nowTime = calendargetTime()getTime();

  轉換字符串為日期

  String strDate = ;

  SimpleDateFormat sDateFormat = new SimpleDateFormat(yyyyMMdd);

  Date sDate = sDateFormatparse(strDate);

  格式化顯示日期型數據

  Date dt_in 日期型數據

  boolean bShowTimePart_in 是否顯示時間部分

  @return String 格式化後的日期格式

  */

  public String DoFormatDate(javautilDate dt_in boolean bShowTimePart_in) {

  if (bShowTimePart_in)

  return (new SimpleDateFormat(yyyyMMdd hh:mm:ss))format(dt_in);

  else

  return (new SimpleDateFormat(yyyyMMdd))format(dt_in);

  }

  國際化信息通常用於在國際化和本地化程序中的地區語言相關的方式顯示日期數字或文本信息等

  public void testLocale(){

  Locale defaultLocale = LocalegetDefault(); //當前機器所在的國家和地區

  Systemoutprintln(defaultLocale);

  Systemoutprintln(defaultLocalegetLanguage()); //英文宿寫的語言名

  Systemoutprintln(defaultLocalegetCountry()); //英文宿寫的國家名

  Systemoutprintln(defaultLocalegetDisplayName()); //語言名(國家名)

  Systemoutprintln(defaultLocalegetDisplayLanguage()); //語言名

  Systemoutprintln(defaultLocalegetDisplayCountry()); //國家名

  Systemoutprintln();

  }

  DateTime date = new DateTime(new Date() DateTimeYEAR_TO_DAY);

  獲取時分秒的方法getDaysCount

  package ceshi;

  import javatextParseException;

  import javatextSimpleDateFormat;

  import javautilDate;

  public class Ceshi {

  public static void main(String[] args) throws ParseException {

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(Gyyyy年MM月dd日 HH時mm分ss秒);

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(yyyy/MM/dd HH:mm);

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(yyyyMMdd HH:mm:ss);

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(yyyy年MM月dd日 HH時mm分ss秒 E );

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(yyyy/MM/dd E);

  SimpleDateFormat CeshiFmt=new SimpleDateFormat(

  一年中的第 D 天 第w個星期 一個月中第W個星期 k時 z時區);

  Date now=new Date();

  Systemoutprintln(CeshiFmtformat(now));

  Systemoutprintln(CeshiFmtformat(now));

  Systemoutprintln(CeshiFmtformat(now));

  Systemoutprintln(CeshiFmtformat(now));

  Systemoutprintln(CeshiFmtformat(now));

  Systemoutprintln(CeshiFmtformat(now));

  }

  }

  公元

  // :

   ::

  秒 星期二

  // 星期二

  一年中的第 個星期 一個月中第個星期 時 CST時區

  獲取兩個日期間的所有日期

  public static GregorianCalendar[]  getBetweenDate(String dString d) throws ParseException

  {

  Vector<GregorianCalendar> v=new Vector<GregorianCalendar>();

  SimpleDateFormat  sdf=new SimpleDateFormat(yyyyMMdd);

  GregorianCalendar gc=new GregorianCalendar()gc=new GregorianCalendar();

  gcsetTime(sdfparse(d));

  gcsetTime(sdfparse(d));

  do{

  GregorianCalendar gc=(GregorianCalendar)gcclone();

  vadd(gc);

  gcadd(CalendarDAY_OF_MONTH );

  }while(!gcafter(gc));

  return vtoArray(new GregorianCalendar[vsize()]);

  }

  public static void main(String[] args) throws Exception {

  // TODO Autogenerated method stub

  GregorianCalendar[] ga=getBetweenDate( );

  for(GregorianCalendar e:ga)

  {

  Systemoutprintln(eget(CalendarYEAR)++

  +(eget(CalendarMONTH)+)++

  eget(CalendarDAY_OF_MONTH)+);

  }

  }


From:http://tw.wingwit.com/Article/program/Java/hx/201311/27009.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.