java根据国家名称获取该国家当前实时时间
时间: 2023-07-06 16:34:04 浏览: 240
可以使用Java中的TimeZone类和DateFormat类来实现。具体步骤如下:
1. 根据国家名称获取该国家对应的时区ID,可以使用TimeZone类的静态方法getTimeZone()来实现。例如,获取中国对应的时区ID可以使用如下代码:
```
String country = "China";
TimeZone timeZone = TimeZone.getTimeZone("Asia/Shanghai");
```
2. 使用时区ID创建一个Calendar对象,并设置当前时间为该时区下的实时时间:
```
Calendar calendar = Calendar.getInstance(timeZone);
```
3. 格式化输出该时间,可以使用DateFormat类来实现。例如,将该时间格式化为"yyyy-MM-dd HH:mm:ss"的字符串可以使用如下代码:
```
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateTime = dateFormat.format(calendar.getTime());
```
最终的代码如下:
```
String country = "China";
TimeZone timeZone = TimeZone.getTimeZone("Asia/Shanghai");
Calendar calendar = Calendar.getInstance(timeZone);
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateTime = dateFormat.format(calendar.getTime());
System.out.println("Current time in " + country + ": " + dateTime);
```
注意:不同国家对应的时区ID不同,需要根据具体情况进行调整。
阅读全文