繁体   English   中英

Java中如何将时间偏移值转换为GMT格式

[英]How to convert time offset value to GMTformat in Java

我从远程 API 得到这样的身体:

    {
       "timezone": "18000",
       "id": "1512569",
       "name": "Tashkent"
    }

如何将时区字段转换为 GMT 格式? 例如在我的例子中:

timezon:18000  = GMT 5

您可以将给定的秒数转换为ZoneOffset实例,然后将其格式化为所需的字符串,例如

import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;
import java.util.Locale;

public class Main {
    public static void main(String[] args) {
        DateTimeFormatter formatter = new DateTimeFormatterBuilder()
                                        .appendLiteral("GMT")
                                        .appendOffset("+H:mm", "Z")
                                        .toFormatter(Locale.ROOT);

        ZoneOffset offset = ZoneOffset.ofTotalSeconds(18000);
        String formattedOffset = formatter.format(offset);
        System.out.println(offset);
        System.out.println(formattedOffset);
    }
}

Output :

+05:00
GMT+5

从 Trail 了解有关现代日期时间 API的更多信息:日期时间

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM