java.util.Date和 String之间的转换

来源:互联网 发布:手机淘宝怎么看好友 编辑:程序博客网 时间:2024/06/06 02:17

SimpleDateFormat这个类来解决我们的时间格式问题。 
SimpleDateFormat 是一个以与语言环境相关的方式来格式化和分析日期的具体类。它允许进行格式化(日期 -> 文本)、分析(文本 -> 日期)和规范化。SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式. 
日期和时间模式
日期和时间格式由日期和时间模式 字符串指定。在日期和时间模式字符串中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行解释。"''" 表示单引号。所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串,或者在分析时与输入字符串进行匹配。 
定义了以下模式字母(所有其他字符 'A' 到 'Z' 和 'a' 到 'z' 都被保留): 

字母  日期或时间元素  表示  示例  
G  Era 标志符  Text  AD  
y  年  Year  1996; 96  
M  年中的月份  Month  July; Jul; 07  
w  年中的周数  Number  27  
W  月份中的周数  Number  2  
D  年中的天数  Number  189  
d  月份中的天数  Number  10  
F  月份中的星期  Number  2  
E  星期中的天数  Text  Tuesday; Tue  
a  Am/pm 标记  Text  PM  
H  一天中的小时数(0-23)  Number  0  
k  一天中的小时数(1-24)  Number  24  
K  am/pm 中的小时数(0-11)  Number  0  
h  am/pm 中的小时数(1-12)  Number  12  
m  小时中的分钟数  Number  30  
s  分钟中的秒数  Number  55  
S  毫秒数  Number  978  
z  时区  General time zone  Pacific Standard Time; PST; GMT-08:00  
Z  时区  RFC 822 time zone  -0800  
以下示例显示了如何在美国语言环境中解释日期和时间模式。给定的日期和时间为美国太平洋时区的本地时间 2001-07-04 12:08:56 
  
日期和时间模式  结果  
"yyyy.MM.dd G 'at' HH:mm:ss z"  2001.07.04 AD at 12:08:56 PDT  
"EEE, MMM d, ''yy"  Wed, Jul 4, '01  
"h:mm a"  12:08 PM  
"hh 'o''clock' a, zzzz"  12 o'clock PM, Pacific Daylight Time  
"K:mm a, z"  0:08 PM, PDT  
"yyyyy.MMMMM.dd GGG hh:mm aaa"  02001.July.04 AD 12:08 PM  
"EEE, d MMM yyyy HH:mm:ss Z"  Wed, 4 Jul 2001 12:08:56 -0700  
"yyMMddHHmmssZ"  010704120856-0700  
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"  2001-07-04T12:08:56.235-0700 


//获取系统当前时间

String time = null;

DateFormat dateFormat = new SimpleDateFormat();

time = dateFormat.format(Calendar.getInstance().getTime());

System.out.println(time);

SimpleDateFormat函数语法:

常见标准的写法"yyyy-MM-dd HH:mm:ss",注意大小写,时间是24小时制,24小时制转换成12小时制只需将HH改成hh,不需要另外的函数。

DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");

DateFormat format 2= new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");

Date date = null;

String str = null;

// String转Date

str = "2007-1-18";

try {

date = format1.parse(str);

data = format2.parse(str);

} catch (ParseException e) {

e.printStackTrace();

}

//Date转String

date=new Date();

str=format1.format(date);

str=format2.format(date);

1、Date——>String

String sdate;

Date ddate;

sdate=(new SimpleDateFormat("yyyy-MM-dd")).format(ddate);

2、String——>Date

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

sdf.setLenient(false); //是否是严格的匹配

String sdate="2006-06-06";

Date ddate;

ddate=sdf.parse(sdate);

------------------------或者

  DateFormat df = DateFormat.getDateInstance(); 
     Date date =  df.parse(“2010-12-12”);  //时间

0 0
原创粉丝点击