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)+号);
}
}