服务器发送我这样的时间 :
2012-006-08 5:00:00+0100
我需要根据本地时间来更改它, 如 hH:MM
。 例如,这是日本、 印度、 美国等的时间 。
我怎样才能做到这一点?
服务器发送我这样的时间 :
2012-006-08 5:00:00+0100
我需要根据本地时间来更改它, 如 hH:MM
。 例如,这是日本、 印度、 美国等的时间 。
我怎样才能做到这一点?
<强度>备选1:使用 java.util.Date
/ /Calendar
: 强度>
First you need to parse the value to a Date
, then reformat it in the format and time zone
you re interested in:
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z",
Locale.US);
Date date = inputFormat.parse(inputText);
// Potentially use the default locale. This will use the local time zone already.
SimpleDateFormat outputFormat = new SimpleDateFormat("HH:mm", Locale.US);
String outputText = outputFormat.format(date);
<强 > 备选2:使用约达时间 强 >
"http://joda-time.sf.net" rel="noreferrer" >Joda time 是爪哇更好的日期/时间库。
DateTimeFormatter inputFormatter = DateTimeFormat
.forPattern("yyyy-MM-dd HH:mm:ss Z")
.withLocale(Locale.US);
DateTime parsed = inputFormatter.parseDateTime(inputText);
DateTimeFormatter outputFormatter = DateTimeFormat
.forPattern("HH:mm")
.withLocale(Locale.US)
.withZone(DateTimeZone.getDefault());
String outputText = outputFormatter.print(parsed);
请注意, 您只有在真正需要时才应该转换为字符串表达式 。 否则, 使用基于您使用的最合适的类型 - 这是 Joda Time 真正闪耀的地方 。
使用 JodaTime。 它比 Java s Date and Time API 更好、更安全。 有很多方法可以返回本地时间天体( HH: MM ) 。
例如,新的 DateTime( 日期时间) 到本地时间 ();
java. uttil. Date 是 UTC 的 ways 。 是什么让你认为它是本地时间? 我怀疑问题在于您通过使用本地时区或可能使用 Date. to String () 的日历实例重新显示它, 也使用本地时区 。
如果这不是问题,请张贴一些样本代码。
不过,我建议你使用Joda time , 提供更清楚的API。
其他的答案是正确的,但已经过时。使用java.time classs 。
ZonedDateTime zdt_Kolkata = OffsetDateTime.parse( "2012-06-08 17:00:00 +0100" , DateTimeFormatter.ofPattern( "yyyy-MM-dd HH:mm:ss Z" ) ).atZone( ZoneId.of( "Asia/Kolkata" ) );
定义 < a href=>" "https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html" rel="nofollow"\\code >DateTimeFormatter 格式模式,以匹配输入字符串 。
String input = "2012-06-08 17:00:00 +0100";
DateTimeFormatter f = DateTimeFormatter.ofPattern( "yyyy-MM-dd HH:mm:ss Z" );
OffsetDateTime
将字符串分析为 < a href=>" https://docs.oracle.com/javase/8/docs/api/java/time/ offsetDateTime.html" rel=“nofollow” code > offsetDateTime ,在您输入中代表
的对象,这意味着“比世界协调时提前一小时”。
OffsetDateTime odt = OffsetDateTime.parse( input , f );
ZonedDateTime
应用 /codece > 或
IST
,因为它们不是真实的时间区,没有标准化,甚至不独一无二(!
ZoneId zoneId_Kolkata = ZoneId.of( "Asia/Kolkata" ); // India
ZonedDateTime zdt_Kolkata = odt.atZone( zoneId_Kolkata );
和另一个...
ZoneId zoneId_Montréal = ZoneId.of( "Asia/Montreal" ); // Québec Canada
ZonedDateTime zdt_Montréal = odt.atZone( zoneId_Montréal );
Instant
UTC, 请提取一个 < code> Instant < /code > 对象 。 < a href="http://docs.oracle.com/javase/8/docs/api/java/time/Instant.html" rel="nofollow"\\ code > Instant \\\\\ a > class < a href="https://en.wikipedia.org/wiki/nanoconfours > rel="nofoldd_Universal_Timeal" rel="no follow">>> >UTC , 并有< a href=".Calendar
, & amp; java.text.SoproDateFormat
。
http://www.joda.org/joda-time/"rel="no follow" >Joda-Time 项目,现载于维护模式 ,建议移民到java.time。
要了解更多信息,请查阅Oracle Toutor 。并搜索Stack Overflow, 查找许多实例和解释。
大部分java.time功能都回传到 Java 6 & amp; 7, 载于< a href="http://www. 33enten.org/ threetenbp/" rel="nol follow" > ThreeTen-Backport , 并进一步改编到< a href="https://en.wikipedia.org/wiki/Anderroid_(操作_system)" rel="nofollow" >Android , 载于。
""http://www. threeten.org/ threeten-extra/" rel="nofollow" > ThreeTen-Extra project 扩展 java.time 并增加课程。 此项目是未来可能添加 java.time 的理由。
Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...
Check this, List<String> list = new ArrayList<String>(); for (int i = 0; i < 10000; i++) { String value = (""+UUID.randomUUID().getLeastSignificantBits()).substring(3, ...
I am in the middle of solving a problem where I think it s best suited for a decorator and a state pattern. The high level setting is something like a sandwich maker and dispenser, where I have a set ...
I have been trying to execute a MS SQL Server stored procedure via JDBC today and have been unsuccessful thus far. The stored procedure has 1 input and 1 output parameter. With every combination I ...
I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...
If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...
I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....
I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...