请尊重他人的劳动成果。转载请注明出处:Java日期格式化之将String类型的GMT,GST日期转换成Date类型

http://blog.csdn.net/fengyuzhengfan/article/details/40164721

在实际开发过程中常常会须要将Date类型的数据封装成XML或Json格式在网络上进行传输,另外在将Date类型的数据存到Sqlite数据库中后再取出来的时候仅仅能获取String类型的日期了,这是由于SQLite是无类型的。这样不得不面对将String
类型的日期转换成Date类型的问题。以下就介绍一下怎样将String类型的GMT、GST日期转换成Date对象。

在JDK1.1之前能够使用newDate(“”)来将String类型的日期转换成Date类型的对象。

但自JDK1.1開始已将不建议这样做了。以下就介绍一下用SimpleDateFormat类来将String类型的日期转换成Date对象。

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类型的GMT、GST日期转换成Date对象


String stringDate =
"Thu Oct 16 07:13:48 GMT 2014";

SimpleDateFormat sdf =
newSimpleDateFormat("EEE MMM ddHH:mm:ss
'GMT' yyyy",Locale.US);

Date date =sdf.parse(stringDate);

//    
System.out.println(date.toString());

sdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");

System.out.println(sdf.format(date));

代码分析:

在实例化SimpleDateFormat类的时候须要指定两个參数,第一个參数是要解析的日期模式。第二个參数是指定语言环境的。在有些时候第二參数是能够省略的,但在解析String类型的GMT或GST日期的时候须要将第二个參数指定为Locale.US或Locale.UK或Locale.ENGLISH否则会出现编译错误。

关于第一个參数日期模式是要依据要解析的String类型日期格式不同而不同,当中EEE代表星期。MMM代表月份。dd代表天。HH代表小时。mm代表分钟,ss代表秒。这里要特别注意的是’GMT’。它代表你要解析的String是GMT格式的时间,假设GST格式能够使用’
GST’来取代’GMT’。

执行效果图

版权声明:本文博主原创文章,博客,未经同意不得转载。

Java日期的格式String类型GMT,GST换算成日期Date种类的更多相关文章

  1. java内存分配和String类型的深度解析

    [尊重原创文章出自:http://my.oschina.net/xiaohui249/blog/170013] 摘要 从整体上介绍java内存的概念.构成以及分配机制,在此基础上深度解析java中的S ...

  2. 【转】java内存分配和String类型的深度解析

    一.引题 在java语言的所有数据类型中,String类型是比较特殊的一种类型,同时也是面试的时候经常被问到的一个知识点,本文结合java内存分配深度分析关于String的许多令人迷惑的问题.下面是本 ...

  3. JAVA中int与String类型的相互转换

    Java的int和String类型间互相转换,小功能但是经常用到,下面是几种实现的方法: 字符串类型String转换成整数int 1. int i = Integer.parseInt([String ...

  4. Java 中要将 String 类型转化为 int 类型

    在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换. 例1: 1 2 3 4 5 6 S ...

  5. erlang处理mongodb日期时间格式data类型(原)

    在项目中,mongo中要创建日期类型,根据这个日期类型进而对mongo设置过期时间expire,加上对应的index索引自动删除. 而mongo中的日期类型,使用ISO格式,例如:ISODate(&q ...

  6. java对象转化成String类型

    在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结.常用的方法有Object#toString(),(String)要转换的对象,St ...

  7. 【原创】Java和C#下String类型中的==和equals的原理与区别

    一.Java下 1.几个例子 public static void main(String[] arge) { String str1 = new String("1234"); ...

  8. JAVA中int转String类型有三种方法

    String.valueOf(i) Integer.toString(i) i+"" i+""也就是一个int型的常量.+上个空的字符串,这里牵涉到了strin ...

  9. 【Java】 int与String类型间的相互转化

    public class Test { public static void main(String[] args) { /* * int类型转String类型 */ int n1 = 9; //1. ...

随机推荐

  1. ubuntu下一个jboss-seam-2.2.2.Final/examples/build.xml:754: warning: 'includeantruntime' was not set

    [javac] /home/huihui/app/jboss-seam-2.2.2.Final/examples/build.xml:754: warning: 'includeantruntime' ...

  2. List、Map和Set实现类

    List.Map和Set实现类 1.List实现类 (1)ArrayList (2)Vector 2.Map实现类 (1)HashMap (2)Hashtable 3.Set实现类 (1)HashSe ...

  3. Spring.net-业务层仓储

    Spring.net-业务层仓储 本系列目录:ASP.NET MVC4入门到精通系列目录汇总 上一节,我们已经把项目框架的雏形搭建好了,那么现在我来开始业务实现,在业务实现的过程当中,不断的来完善我们 ...

  4. 文件搜索神器 Everything

    Everything 是一款 NTFS 磁盘格式下的文件搜索工具,1月5日发布测试版本 1.3.0.631b Beta,增加文件列表.收藏夹.自定义快捷键.高级搜索等功能,取消了比较实用的 etp/f ...

  5. JDK5什么是新的堵塞队列线程(四)

    一. 堵塞队列与普通队列: 队列是一种主要的数据类型,其典型特征是先进先出. 堵塞队列和普通队列的差别在于: 当队列为空时.从队列中获取元素的线程会被堵塞.直到其它的线程往空的队列里插入新的元素: 当 ...

  6. C# winform 实现 qq 在屏幕边缘 自动隐藏 鼠标移过去 移上去 又自动显示

    代码下载地址   http://download.csdn.net/detail/simadi/7677147

  7. design pattern Builder 生成器设计模式

    其实设计模式可以学习很有趣,你并不需要有这么难啃旱地FOG对我来说,当然,这些都是健康的骨骼啃啃. 在本文中,建造者模式设计一个搞笑的一幕.根据这一模型来学习功夫的方法,哈哈. 基类的第一,设计.那么 ...

  8. Jeditable 点击编辑文字插件

    Jeditable - jQuery就地编辑插件使用   jeditable是一个jquery插件,它的优点是可以就地编辑,并且提交到服务器处理,是一个不可多得的就地编辑插件.(注: 就地编辑,也有称 ...

  9. ACM-DP最大连续子——hdu1231

    ***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...

  10. 读改善c#代码157个建议:建议4~6

    目录: 建议4:TryParse比Parse好 建议5:使用int?确保值类型也可以为null 建议6:区别 readonly 和 const 的用法 一.建议4:TryParse比Parse 好 T ...