JAVA日期字符串转化,日期加减

  SimpleDateFormat函数语法:
  G 年代标志符
  y 年
  M 月
  d 日
  h 时 在上午或下午 (1~12)
  H 时 在一天中 (0~23)
  m 分
  s 秒
  S 毫秒
  E 星期
  D 一年中的第几天
  F 一月中第几个星期几
  w 一年中第几个星期
  W 一月中第几个星期
  a 上午 / 下午 标记符 
  k 时 在一天中 (1~24)
  K 时 在上午或下午 (0~11)
  z 时区

 

1. 日期格式化为字符串

Java代码  收藏代码
  1. import java.text.SimpleDateFormat;  
  2. import java.util.Calendar;  
  3.   
  4. public class Test {  
  5.   
  6.     /** 
  7.      * @param args 
  8.      */  
  9.     public static void main(String[] args) {  
  10.         SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");  
  11.         SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm");   
  12.         SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  13.         SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");  
  14.         SimpleDateFormat myFmt4=new SimpleDateFormat("一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");  
  15.         Calendar now = Calendar.getInstance();  
  16.         System.out.println(myFmt.format(now.getTime()));  
  17.         System.out.println(myFmt1.format(now.getTime()));  
  18.         System.out.println(myFmt2.format(now.getTime()));  
  19.         System.out.println(myFmt3.format(now.getTime()));  
  20.         System.out.println(myFmt4.format(now.getTime()));  
  21.         System.out.println(now.getTime().toString());  
  22.     }  
  23. }  
  24.   
  25. // 结果  
  26. /** 
  27. 2014年07月07日 23时32分19秒 
  28. 14/07/07 23:32 
  29. 2014-07-07 23:32:19 
  30. 2014年07月07日 23时32分19秒 星期一  
  31. 一年中的第 188 天 一年中第28个星期 一月中第2个星期 在一天中23时 JST时区 
  32. Mon Jul 07 23:32:19 JST 2014 
  33. */  

 

2. 字符转日期

Java代码  收藏代码
  1. import java.text.ParseException;  
  2. import java.text.SimpleDateFormat;  
  3. import java.util.Date;  
  4.   
  5. public class Test {  
  6.   
  7.     /** 
  8.      * @param args 
  9.      */  
  10.     public static void main(String[] args) {  
  11.         SimpleDateFormat myFmt=new SimpleDateFormat("yy/MM/dd HH:mm");   
  12.         try {  
  13.             Date date = myFmt.parse("2002/10/8 15:30:22");  
  14.             System.out.println(date);  
  15.         } catch (ParseException e) {  
  16.             e.printStackTrace();  
  17.         }  
  18.     }  
  19. }  
  20.   
  21. //结果  
  22. /** 
  23. Tue Oct 08 15:30:00 JST 2002 
  24. */  

 

3. 日期年份,月份,天加减

Java代码  收藏代码
  1. import java.text.ParseException;  
  2. import java.text.SimpleDateFormat;  
  3. import java.util.Calendar;  
  4. import java.util.Date;  
  5.   
  6. public class Test {  
  7.   
  8.     /** 
  9.      * ******** 在Calendar对象的add方法中,第二个参数为正数表示“加”,负数表示“减”。 
  10.      * @param args 
  11.      * @throws ParseException  
  12.      */  
  13.     public static void main(String[] args) throws ParseException {  
  14.         SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");  
  15.         String str = "20110823";  
  16.         Date dt = sdf.parse(str);  
  17.         Calendar rightNow = Calendar.getInstance();  
  18.         rightNow.setTime(dt);  
  19.         rightNow.add(Calendar.YEAR, -1);// 日期减1年  
  20.         System.out.println(sdf.format(rightNow.getTime()));  
  21.           
  22.         rightNow.add(Calendar.MONTH, 3);// 日期加3个月  
  23.         System.out.println(sdf.format(rightNow.getTime()));  
  24.           
  25.         rightNow.add(Calendar.DAY_OF_YEAR, 10);// 日期加10天  
  26.         System.out.println(sdf.format(rightNow.getTime()));  
  27.     }  
  28. }  
  29.   
  30. // 结果  
  31. /** 
  32. 20100823 
  33. 20101123 
  34. 20101203 
  35. */  

 

 链接地址:http://linleizi.iteye.com/blog/2089299

posted @ 2016-06-17 16:58  *新星月-倪新生*  阅读(7085)  评论(0编辑  收藏  举报