日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

java xml date_W3C XML 模式时间数据类型与java Date进行转换

發布時間:2025/3/8 asp.net 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java xml date_W3C XML 模式时间数据类型与java Date进行转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

W3C XML 模式時間數據格式:

"2014-11-17T 09:40:25" 或者 “2014-11-17T 09:40:25+08:00”

要想把以上格式的時間轉換為能被java所使用個格式有以下3種辦法:

(1)、jdk中有這么一個類XMLGregorianCalendar,使用XMLGregorianCalendar類中的toGreGregorianCalendar().getTimeInMillis()方法,返回TimesTamp對象。

用法:

Timestamp timestamp = new Timestamp(xmlDate.toGregorianCalendar().getTimeInMillis());

拿到了Timestamp 對象,大家應該都知道怎么做了吧!可以用SimpleDateFormat()?想要轉成啥樣都行。不

過,SimpleDateFormat() 也正是我要說的第二種方法。

注釋:XMLGregorianCalendar類是jdk1.5之后才有的類,但在jdk api的官方文檔中未提及此類,可以在其他官方文檔中看到粗略的說明,不保證在下一版本的jdk中會保留此類。

(2)、SimpleDateFormat()

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", Locale.CHINESE);

format.setTimeZone(TimeZone.getTimeZone("GMT"));//"GMT":格林尼治時間, "UTC":世界統一時間

Date parse = format.parse("2014-11-12T22:00:44.0000000Z");

//.0000000Z未標明時區,即默認是GMT的時間,在打印的時候按照咱們東八區,則是第二天的6點.

System.out.println("parse: " + parse);

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

sdf.setTimeZone(TimeZone.getTimeZone("GMT"));

Date d2 = sdf.parse("2014-11-05T22:30:56.183+0800");

System.out.println("d2: "+d2); // output Wed Sep 17 12:00:44 IST 2014

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

sdf.setTimeZone(TimeZone.getDefault());

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

注意:用System,out.prientln()打印Date的時候是按你本地時區時間來顯示

有人就會說了,既然可以直接用SimpleDateFormat()來轉,為嘛要采用第一種呢,問題就在這兒,因為schame中的時間可能帶時區,也可能不帶時區,可是你要知道在你使用new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); 的時候,你的模板格式是固定的。你如何知道對方傳來的是帶時區的還是不帶時區的呢?所以這種方式是存在很大的風險的,但只要時間模式能固定,該方法還是可行的。不然,你要是不嫌麻煩,可以一個字符一個字符的去判斷和解析,主要判斷ss后面有沒有跟毫秒,毫秒后面有沒有跟時區。

(3)、使用JAXB,jaxb可以將xml轉換為java對象,其內部機制能直接轉為你要的Date,只要你的對象中定義的時間屬性是DateTime類型即可。

希望我做的這些筆記能幫助大家盡快解決問題少走一些彎路!

xml中的時間轉換為Date類型:

javax.xml.bind.DatatypeConverter.parseDateTime(reqTime).getTime() ?//?reqTime是從Node中獲得的String類型時間

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的java xml date_W3C XML 模式时间数据类型与java Date进行转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。