获取时间服务器-Java时出错

获取时间服务器-Java时出错,java,time,ntp,Java,Time,Ntp,我使用以下代码从在线服务器获取时间: 我已经包括了以下标题 import java.net.InetAddress; import java.util.Date; import org.apache.commons.net.ntp.NTPUDPClient; import org.apache.commons.net.ntp.TimeInfo; 这是我的主要代码 public static void main(String args[]) throws Exception {

我使用以下代码从在线服务器获取时间:

我已经包括了以下标题

import java.net.InetAddress;
import java.util.Date;
import org.apache.commons.net.ntp.NTPUDPClient; 
import org.apache.commons.net.ntp.TimeInfo;
这是我的主要代码

        public static void main(String args[]) throws Exception {
                String TIME_SERVER = "time-a.nist.gov";   
NTPUDPClient timeClient = new NTPUDPClient();
InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
TimeInfo timeInfo = timeClient.getTime(inetAddress);
long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();
Date time = new Date(returnTime);
System.out.println("" + time);

        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new NewJFrame().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                     
    // End of variables declaration                   
}

但问题是,这段代码返回的是本地机器上设置的时间,而不是服务器上设置的时间

试一试这样的东西

String TIME_SERVER = "time-a.nist.gov";   
NTPUDPClient timeClient = new NTPUDPClient();
InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
TimeInfo timeInfo = timeClient.getTime(inetAddress);
long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();
Date time = new Date(returnTime);

@MattJones先生,还是一样的问题!现在我对。。。让我给你个机会whirl@MattJones注意,先生我要印度标准的Time@MattJones对不起,先生,我所说的是错误的,它确实需要时间从互联网,但现在即使是传输一个工作,但问题是,我总是希望它显示格林威治时间,但它显示根据区域设置的机器;因为如果有人改变他们的时区,时间就会改变,所以我想要格林尼治标准时间,我现在不知道它是怎么突然开始的working@MattJones顺便说一句,非常感谢你的帮助