java string 转date
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java string 转date相关的知识,希望对你有一定的参考价值。
我需要把一个String类型“2008-08-08 12:10:12”转换成DATE类型
保存进数据库时一定要是上面这个格式!
注意:1、数据库是DATE类型
2、不要英文的格式,如“Thu Dec 16 17:24:27 CST 2004 ”
3、不要把网上那些东西COPY过来,我已经试过了!
谢谢
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse("2008-08-08 12:10:12");
具体请参考JDK API文档
另外 转换成DATE类型后并不会因为转换前的字符串是什么样子而不同 DATE类型的内部表示永远是一样的 所以你的第2条要求是没有意义的 数据库如何显示这个DATE类型只是数据库自己的关系 和DATE本身无关
如果你希望要自定义Date的显示 同样可是使用SimpleDateFormat类来实现
只需要
String date = sdf.format(new Date());
就可以了 参考技术A TO_DATE(string)
例如:
string a="2008-08-08 12:10:12"
....
insert into aaa values (TO_DATE(a)) 参考技术B Wed
Sep
07
21:54:58
CST
2011
这个应该是通过System.out.println(new
Date());获得的吧
//将string转化为date
SimpleDateFormat
sdf
=new
SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
String
time="2011-06-09
18:22:36";
try
Date
d=sdf.parse(time);
System.out.println(d);
catch
(ParseException
e)
//
TODO
Auto-generated
catch
block
e.printStackTrace();
//将date转化为String
SimpleDateFormat
sdf
=new
SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
String
s=sdf.format(new
Date());
System.out.println(s); 参考技术C 感觉是转不出来的···
method1:
String
date
=
"Wed
Sep
07
21:54:58
CST
2011";
SimpleDateFormat
sdf
=
new
SimpleDateFormat("EEE
MMM
dd
HH:mm:ss
z
yyyy",Locale.US);
Date
d=sdf.parse(date);
sdf=new
SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
System.out.println(sdf.format(d));
method2:
String
s
=
"Wed
Sep
07
21:54:58
CST
2011";
Date
date
=
new
Date(s);
Timestamp
nousedate
=
new
Timestamp(date.getTime());
System.out.println(nousedate);
虽然都能转出相应的样式,但数字总是不对的···有种外国时间的味道·· 参考技术D 用SimpleDateFormate这个类
SimpleDateFormat
sdf
=
new
SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
Date
date
=
new
Date(System.currentTimeMillis());
sdf.format(date);
代码纯手敲可能有不正确的地方,但是基本语法就是这么写。。。。
怎么将string类型的日期转换为date
1、首先介绍一下将String类型转为Date类型的方法。需要导入java.text.SimpleDateFormat类。下面举一个例子,比如有一个字符串 “2018-08-24“,想要转为Date类型,代码如图所示。
2、可以看出,只需要给SimpleDateFormat指定格式,如yyyy-MM-dd,然后使用SimpleDateFormat的parse方法就可以实现将String类型转为Date类型了。
3、下面我们验证一下。是否转化成功,打印一下转化后的时间类型的毫秒数,如果可以打印出结果,说明转化成功,代码如图所示。
4、通过上面的代码可以看出,String类型已经成功转换为Date类型了,注意一点,使用SimpleDateFormat需要捕获ParseException异常。如图所示。
参考技术A 下面的代码说明如何将String类型的日期转换成java.util.Date类型的对象。为了实现转换,我们使用java.text.SimpleTextFormat类,它继承自java.txt.TextFormat抽象类。import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.Date;
public class StringToDate
public static void main(String[] args)
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try
Date today = df.parse("20/12/2009");
System.out.println("Today = " + df.format(today));
catch (ParseException e)
e.printStackTrace();
下面是代码的结果:
Today = 20/12/2009
例子的开始部分创建了一个“dd/MM/yyyy”格式的SimpleDateFormat对象,它意味着要转换的日期字符串的格式是日期、月、年。
最后,通过使用parse(String srouce)函数得到一个Date类的实例。由于当给定的字符串不符合给定格式时,parse对象跑出ParseException异常,我们需要捕获它。
下面的列表是从javadoc文档中摘取的用来格式化Date对象的一些预定义的模式。本回答被提问者采纳
以上是关于java string 转date的主要内容,如果未能解决你的问题,请参考以下文章