[英]Joda Time - Convert a String into a DateTime with a particular timezone and in a particular format
我想將字符串日期轉換為特定時區和特定格式的DateTime對象。 我該怎么做 ?
字符串日期可以是世界上使用的任何格式。 示例MM-DD-YYYY,YYYY-MM-DD,MM / DD / YY,MM / DD / YYYY等。TimeZone可以是用戶指定的任何合法時區。
示例-將太平洋時區的YYYY-MM-DD轉換為MM / DD / YY。
使用DateTimeFormatterBuilder
來構建能夠解析/格式化多個DateTimeFormat
的格式化程序,並將生成的DateTimeFormatter
設置為使用指定的DateTimeZone
:
DateTimeParser[] parsers = {
DateTimeFormat.forPattern("MM-dd-yyyy").getParser(),
DateTimeFormat.forPattern("yyyy-MM-dd").getParser(),
DateTimeFormat.forPattern("MM/dd/yyyy").getParser(),
DateTimeFormat.forPattern("yyyy/MM/dd").getParser()
};
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.append(null, parsers)
.toFormatter()
.withZone(DateTimeZone.UTC);
DateTime dttm1 = formatter.parseDateTime("01-31-2012");
DateTime dttm2 = formatter.parseDateTime("01/31/2012");
DateTime dttm3 = formatter.parseDateTime("2012-01-31");
要格式化給定的DateTime
,只需使用dttm1.toString("yyyy-MM-dd"))
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.