java 中 date时间的转换

import java.util.Date; 
import java.text.ParseException; 
import java.text.ParsePosition;
import java.text.SimpleDateFormat; 


public class date1 { 


/** 
* 日期转换成字符串 
* @param date 
* @return str 
*/ 
public static String DateToStr(Date date) { 
  
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
   String str = format.format(date); 
   return str; 



/** 
* 字符串转换成日期 
* @param str 
* @return date 
*/ 
public static Date StrToDate(String str) { 
  
   SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
   Date date = null; 
   try { 
    date = format.parse(str); 
   } catch (ParseException e) { 
    e.printStackTrace(); 
   } 
   return date; 



//public static void main(String[] args) { 
//  
//   Date date = new Date(); 
//   System.out.println("日期转字符串:" + date1.DateToStr(date)); 
//   System.out.println("字符串转日期:" + date1.StrToDate(date1.DateToStr(date))); 
//  
//} 








/** 
   * 字符串转换为java.util.Date<br> 
   * 支持格式为 yyyy.MM.dd G 'at' hh:mm:ss z 如 '2002-1-1 AD at 22:10:59 PSD'<br> 
   * yy/MM/dd HH:mm:ss 如 '2002/1/1 17:55:00'<br> 
   * yy/MM/dd HH:mm:ss pm 如 '2002/1/1 17:55:00 pm'<br> 
   * yy-MM-dd HH:mm:ss 如 '2002-1-1 17:55:00' <br> 
   * yy-MM-dd HH:mm:ss am 如 '2002-1-1 17:55:00 am' <br> 
   * @param time String 字符串<br> 
   * @return Date 日期<br> 
   */ 
public static Date stringToDate(String time){ 
    SimpleDateFormat formatter; 
    int tempPos=time.indexOf("AD") ; 
    time=time.trim() ; 
    formatter = new SimpleDateFormat ("yyyy.MM.dd G 'at' hh:mm:ss z"); 
    if(tempPos>-1){ 
      time=time.substring(0,tempPos)+ 
           "公元"+time.substring(tempPos+"AD".length());//china 
      formatter = new SimpleDateFormat ("yyyy.MM.dd G 'at' hh:mm:ss z"); 
    } 
    tempPos=time.indexOf("-"); 
    if(tempPos>-1&&(time.indexOf(" ")<0)){ 
      formatter = new SimpleDateFormat ("yyyyMMddHHmmssZ"); 
    } 
    else if((time.indexOf("/")>-1) &&(time.indexOf(" ")>-1)){ 
      formatter = new SimpleDateFormat ("yyyy/MM/dd HH:mm:ss"); 
    } 
    else if((time.indexOf("-")>-1) &&(time.indexOf(" ")>-1)){ 
      formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss"); 
    } 
    else if((time.indexOf("/")>-1) &&(time.indexOf("am")>-1) ||(time.indexOf("pm")>-1)){ 
      formatter = new SimpleDateFormat ("yyyy-MM-dd KK:mm:ss a"); 
    } 
    else if((time.indexOf("-")>-1) &&(time.indexOf("am")>-1) ||(time.indexOf("pm")>-1)){ 
      formatter = new SimpleDateFormat ("yyyy-MM-dd KK:mm:ss a"); 
    } 
    ParsePosition pos = new ParsePosition(0); 
    java.util.Date ctime = formatter.parse(time, pos); 


    return ctime; 



  public static void main(String[] args) {
  String  date="2016-1-8 10:10:00";
  Date dat= stringToDate(date);
//   SimpleDateFormat format=new SimpleDateFormat("yyyy-M-d HH-mm-ss");
  SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss ");
  System.out.println(formatter.format(dat));
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值