java - 在android中将字符串转换为日期的最佳方法

标签 java android string datetime

最好的方法是什么以及如何将此字符串“2015-07-18T13:32:56.971-0400”转换为日期并转换为用户手机的本地时区在安卓中?

最佳答案

我列出了重复链接,因为您询问如何解析日期字符串。这个问题已经被回答过无数次了。

另一个链接显示,Android 中用户手机的本地时区 JVM 的默认时区,因此您无需进行任何转换。 p>

要亲自查看,请在任何 JVM 中运行以下代码(Android、PC、Mac、Linux...):

String input = "2015-07-18T13:32:56.971-0400";

Date date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ").parse(input);
String output = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss.SSS a").format(date);
System.out.println(input + "  ->  " + output);

如果您在美国加利福尼亚州洛杉矶,您会看到:

2015-07-18T13:32:56.971-0400  ->  07/18/2015 10:32:56.971 AM

请注意,13:32 已调整为上午 10:32 (10:32)。

关于java - 在android中将字符串转换为日期的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32237886/

相关文章:

javascript - 如何批量删除字符串中所有不需要的字符?

java - 发出在 Java 中异步上传文件的 HTTP 请求的最简单方法是什么?

java - 1. java ')'预期错误+ 2.不含 'else'的 'if'

android - 使用 Robotium、android 单击列表项内的按钮

java - Android Studio 2 比较对象和 boolean 编译是否成功?

c# - 如何获取字符串的前五个字符

使用字符串参数从 C 调用 D 函数

java - Android ListView 持久化背景

Java 验证 IP 地址和子网

android - 我的 GridView 中填充的 TextView 显示为空白