首页 > 代码库 > Java——日期格式

Java——日期格式


/*

 * 日期对象和毫秒值之间的转换。

 * 

 * 毫秒值---》日期对象:

 * 1.通过Date对象的构造方法new Date(timeMillis)

 * 2.还可以通过setTime设置。

 * 因为可以过Date对象的方法对该日期中的各个字段(年月日等进行操作)

 * 

 * 日期对象--》毫秒值:

 * 2。getTime方法。

 * 因为可以通过具体的数值进行运算。

 */

public static void getTime()

{

/*

 * 对日期对象进行格式化:

 */

Date date = new Date();

//获取日期格式方法:具备着默认的风格()************固定格式

DateFormat dateFormat = DateFormat.getDateInstance();//2014-5-21

dateFormat = DateFormat.getDateInstance(DateFormat.LONG);//2014年5月21日

dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);//2014年5月21日 下午11时05分43秒

//***************************自定义格式************************

dateFormat = new SimpleDateFormat("--yy--MM--dd--");

String str = dateFormat.format(date);

System.out.println(str);

}

/*

 * 将日期格式的字符串转换成为----》日期对象

 * 使用的是  DateFormat

 */

public static void getTime2() throws ParseException

{

String str = "2014-3-5";//默认格式

DateFormat dateFormat = DateFormat.getDateInstance();

//自定义格式解析

str = "2014年5月20日";

dateFormat = DateFormat.getDateInstance(DateFormat.LONG);

str = "2014----5----22";

dateFormat = new SimpleDateFormat("yyyy----MM----dd");//自定义解析方法

Date date = dateFormat.parse(str);

System.out.println(date);

}

/*

 * 练习:

 * 计算俩个日期之间的差:   2013-3-13——2014-3-23中间有多少tian

 * 1.将日期格式的字符串转成Date对象。

 * 2.将Date对象转成毫秒值

 * 3相减。。

 */

public static void test(String s1, String s2) throws ParseException

{

//将日期字符转成日期对象.

DateFormat dateFormat = DateFormat.getDateInstance();

dateFormat = new SimpleDateFormat("yyyy-MM-dd");

Date date1 = dateFormat.parse(s1);

Date date2 = dateFormat.parse(s2);

long time1 = date1.getTime();

long time2 = date2.getTime();

long time = Math.abs(time1-time2);//time1-time2

System.out.println(time);

}

/*

 * Calendar日历演示:

 */

public static void testCalendar()

{

Calendar c = Calendar.getInstance();

int year = c.get(Calendar.YEAR);

int month = c.get(Calendar.MONTH)+1;//月是从  0开始的  

int day = c.get(Calendar.DAY_OF_MONTH);

int week = c.get(Calendar.DAY_OF_WEEK);//星期的第一天   7  

System.out.println(year+"年"+month+"月"+day+"日  "+getWeek(week));

}

public static String getWeek(int i)

{

String[] weeks = {"""星期日""星期一""星期二""星期三""星期四""星期五""星期六"};

return weeks[i];

}

 

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

{

// TODO Auto-generated method stub

/*

 * Runtime没有构造方法 ,说明该类不可以创建对象。又发现还有非静态的方法,

 * 说明该类应提供静态的返回该类对象的方法。

 * 而且只有一个,说Runtime类使用了单例模式

 */

//Runtime r = Runtime.getRuntime();

//getTime();

//getTime2();

testCalendar();

}