String与Data、Timestamp间的转换

今天本来想着把网页上的日期转换为Data存到数据库,不料就这个简单的功能竟出了些乱七八糟的异常,调试了一下午+一晚上才发现只是打错了一个字母,查到的资料就不要浪费总结一下贴出来
以代码来自搜索引擎并加以修改,仅供备忘
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestDate {
/**
  * @param fgrass
  * @version 4.23
  */
public static void main(String args[]){
   //设定字符串格式,可以规定不同的格式如:"yyyy-MM-dd"、"yyyy.MM.dd"……
         DateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");
         //获得当前日期
         Date date = new Date();
         //1.使用java.text.SimpleDateFormat将日期转换为字符串
         String str = formatDate.format(date);
         System.out.println("1: "+str);
         //2.直接打印
         System.out.println("2: "+date);
         formatDate = DateFormat.getDateInstance(DateFormat.SHORT);    
         str = formatDate.format(date);
         System.out.println("DateFormat.SHORT: "+str);
         formatDate = DateFormat.getDateInstance(DateFormat.FULL);    
         str = formatDate.format(date);
         System.out.println("DateFormat.FULL: "+str);
         formatDate = DateFormat.getDateInstance(DateFormat.MEDIUM);    
         str = formatDate.format(date);
         System.out.println("DateFormat.MEDIUM: "+str);
        
        
         //将字符串转换为日期        
         str = "1987-1-1";
         try {
          date = formatDate.parse(str);
         } catch (ParseException e) {
          e.printStackTrace();
         }
         //测试:
         System.out.println(date);
         System.out.println(formatDate.format(date));
        
         //Timestamp和String之间转换的函数,Timestamp相当于数据库中的DataTime
            //Timestamp转化为String:
         SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//定义格式,不显示毫秒
         Timestamp now = new Timestamp(System.currentTimeMillis());//获取系统当前时间
         str = df.format(now);
         System.out.println(str);
            
         //String转化为Timestamp方法1:
         SimpleDateFormat formatTimestamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         date = new Date();
         str = formatTimestamp.format(date);
         Timestamp time = Timestamp.valueOf(str);
         System.out.println(time);
         //String转化为Timestamp方法2:
         String s = "1987-1-1 1:1:1";
         time = Timestamp.valueOf(s);
         System.out.println(time.toString());
         System.out.println(time);
}
}
运行结果:
1: 2009-04-23
2: Thu Apr 23 22:53:40 CST 2009
DateFormat.SHORT: 09-4-23
DateFormat.FULL: 2009年4月23日 星期四
DateFormat.MEDIUM: 2009-4-23
Thu Jan 01 00:00:00 CST 1987
1987-1-1
2009-04-23 22:53:40
2009-04-23 22:53:40.0
1987-01-01 01:01:01.0
1987-01-01 01:01:01.0
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值