Java 使用JodaTime将本地时间转换为特定的国家/地区时间

Java 使用JodaTime将本地时间转换为特定的国家/地区时间,java,jodatime,android-jodatime,Java,Jodatime,Android Jodatime,我在试图找出如何将一个人的本地时间转换为Joda的英国时间时遇到了问题。 说, 31-01-2015 12:00:01华盛顿特区时间上午12:00:01(可以是任何国家的时间) 2015年1月31日伦敦时间上午5:00:01(输出应始终为伦敦时间) 似乎无法将其格式化为此格式 日-月-年-小时:分钟:秒:a输入格式为华盛顿特区时间,输出格式为伦敦时间 您可以将多个区域id作为输入和输出。 从或获取时区ID 输出: 伦敦时间:2019-01-03 06:25:00 希望这会有所帮助:谢谢,但我需要

我在试图找出如何将一个人的本地时间转换为Joda的英国时间时遇到了问题。 说, 31-01-2015 12:00:01华盛顿特区时间上午12:00:01(可以是任何国家的时间)

2015年1月31日伦敦时间上午5:00:01(输出应始终为伦敦时间)

似乎无法将其格式化为此格式
日-月-年-小时:分钟:秒:a

输入格式为华盛顿特区时间,输出格式为伦敦时间 您可以将多个区域id作为输入和输出。 从或获取时区ID

输出:

伦敦时间:2019-01-03 06:25:00


希望这会有所帮助:谢谢,但我需要将时区转换为伦敦时间。不仅仅是华盛顿时间。像uhm一样,使用DateTime()或Date()获取当前时间,然后返回伦敦时间。请添加更多的意见,我可以从代码更改。谢谢。您可以在
fromTimeZone
变量中把区域id放在“EST”的位置,就是这样。为了让国家时区转到
DateTimeZone zone = DateTimeZone.forID("Europe/London"); DateTime dt = new DateTime(zone);
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
import org.joda.time.format.DateTimeFormat;
public class Test {

public static void main(String[] args) throws Exception {

    final DateTimeZone fromTimeZone = DateTimeZone.forID("EST");
    final DateTime dateTime = new DateTime("2019-01-03T01:25:00", fromTimeZone);

    final org.joda.time.format.DateTimeFormatter outputFormatter
            = DateTimeFormat.forPattern("yyyy-MM-dd hh:mm:ss a").withZone(DateTimeZone.forID("Europe/London"));
    System.out.println("London time:" + outputFormatter.print(dateTime));

}