gpt4 book ai didi

java - Android 只从 iso-8601 获取时间

转载 作者:行者123 更新时间:2023-11-30 03:24:27 24 4
gpt4 key购买 nike

我在登录用户时对服务器进行 API 调用。 API 调用返回 JSON 格式的数据,字段为:

time_logged_in - iso-8601 格式的时间,例如 2013-08-19T14:29Z

但是在我的 TextView 中我只想显示用户登录的时间,例如 14:29。

任何人都可以帮助并告诉我我该怎么做吗?

最佳答案

使用SimpleDateFormat从一种格式转换为另一种格式。然后你可以从中提取相关部分。一种方法如下:

String server_format = "2013-08-19T14:29Z";    //server comes format ?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mmZ");
try {

Date date = sdf.parse(server_format);
System.out.println(date);
String your_format = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(date);
String [] splitted = your_format.split(" ");
System.out.println(splitted[1]); //The second part of the splitted string, i.e time
// Now you can set the TextView here


} catch (ParseException e) {
System.out.println(e.toString()); //date format error
}

P.S 我还没有测试过这段代码。希望你明白这个概念。参见 How to format a date android?了解更多。

另一种方法是使用 .split(),使用 T 作为分隔符。然后使用 Remove all occurrences of char from string 上给出的答案删除 Z 部分并在 TextView 中显示结果。

第三种方法是使用 .replace 函数将 TZ 替换为 "" (空格) .然后使用 .split() 您可以使用 "" 作为分隔符拆分字符串。返回的数组的第二个元素将为您提供时间。

关于java - Android 只从 iso-8601 获取时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18493138/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com