问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java获取网络当前时间

发布网友 发布时间:2022-04-23 11:09

我来回答

4个回答

热心网友 时间:2023-10-12 01:46

如果你要获取的是Internet时间,可以使用NTP服务。

NTP概念简介 
  Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。 


java实现:

import java.io.InputStream;
import java.net.Socket;

public class TimeUtil {
    public static final int DEFAULT_PORT = 37;//NTP服务器端口
    public static final String DEFAULT_HOST = "time-nw.nist.gov";//NTP服务器地址
    private TimeUtil() {
    };

    public static long currentTimeMillis(Boolean sync) {
        if (sync != null && sync.booleanValue() != true)
            return System.currentTimeMillis();
        try {
            return syncCurrentTime();
        } catch (Exception e) {
            return System.currentTimeMillis();
        }
    }

    public static long syncCurrentTime()  throws Exception {
        // The time protocol sets the epoch at 1900,
        // the java Date class at 1970. This number
        // converts between them.
        long differenceBetweenEpochs = 2208988800L;

        // If you'd rather not use the magic number uncomment
        // the following section which calculates it directly.

        /*
         * TimeZone gmt = TimeZone.getTimeZone("GMT"); Calendar epoch1900 =
         * Calendar.getInstance(gmt); epoch1900.set(1900, 01, 01, 00, 00, 00);
         * long epoch1900ms = epoch1900.getTime().getTime(); Calendar epoch1970
         * = Calendar.getInstance(gmt); epoch1970.set(1970, 01, 01, 00, 00, 00);
         * long epoch1970ms = epoch1970.getTime().getTime();
         * 
         * long differenceInMS = epoch1970ms - epoch1900ms; long
         * differenceBetweenEpochs = differenceInMS/1000;
         */

        InputStream raw = null;
        try {
            Socket theSocket = new Socket(DEFAULT_HOST, DEFAULT_PORT);
            raw = theSocket.getInputStream();

            long secondsSince1900 = 0;
            for (int i = 0; i < 4; i++) {
                secondsSince1900 = (secondsSince1900 << 8) | raw.read();
            }
            if (raw != null)
                raw.close();
            long secondsSince1970 = secondsSince1900 - differenceBetweenEpochs;
            long msSince1970 = secondsSince1970 * 1000;
            return msSince1970;
        } catch (Exception e) {
            throw new Exception(e);
        }
    }
}


中国大概能用的NTP时间服务器 
     server 133.100.11.8 prefer 
     server 210.72.145.44 
     server 203.117.180.36 //程序中所用的 
     server 131.107.1.10 
     server time.asia.apple.com 
     server 64.236.96.53 
     server 130.149.17.21 
     server 66.92.68.246 
     server www.freebsd.org 
     server 18.145.0.30 
     server clock.via.net 
     server 137.92.140.80 
     server 133.100.9.2 
     server 128.118.46.3 
     server ntp.nasa.gov 
     server 129.7.1.66 
     server ntp-sop.inria.frserver 210.72.145.44(国家授时中心服务器IP地址) 
     ntpdate 131.107.1.10 
     ntpdate -s time.asia.apple.com 

热心网友 时间:2023-10-12 01:46

java获取网络时间
try {
URL url = new URL("http://www.bjtime.cn");// 取得资源对象
URLConnection uc = url.openConnection();// 生成连接对象
uc.connect(); // 发出连接
long ld = uc.getDate(); // 取得网站日期时间
Date date = new Date(ld); // 转换为标准时间对象
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int day = calendar.get(Calendar.DAY_OF_MONTH);
if (day == 6) {
return true;
}
} catch (Exception e) {
e.printStackTrace();
}

热心网友 时间:2023-10-12 01:47

中国科学院国家授时中心
string webUrl = http://www.ntsc.ac.cn
/**
* 获取指定网站的日期时间
*
* @param webUrl
* @return
* @author SHANHY
* @date 2015年11月27日
*/
private static String getWebsiteDatetime(String webUrl){
try {
URL url = new URL(webUrl);// 取得资源对象
URLConnection uc = url.openConnection();// 生成连接对象
uc.connect();// 发出连接
long ld = uc.getDate();// 读取网站日期时间
Date date = new Date(ld);// 转换为标准时间对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA);// 输出北京时间
return sdf.format(date);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

热心网友 时间:2023-10-12 01:47

是在网页里写吗???追问不是,用java代码获取的

java获取网络当前时间

如果你要获取的是Internet时间,可以使用NTP服务。NTP概念简介 Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防...

java如何获取当前时间,java如何获取ip地址

public static void main(String[] args) { try { System.out.println("当前时间:"+new Date());System.out.println("IP地址 : " + InetAddress.getLocalHost());} catch (UnknownHostException e) { e.printStackTrace();} }

java如何获得当前时间,除系统时间以外

public static void main(String[] args) throws IOException { // 联网获取时间 URL url=new URL("http://www.bjtime.cn");//取得资源对象 URLConnection uc=url.openConnection();//生成连接对象 uc.connect(); //发出连接 long ld=uc.getDate(); //取得网站日期时间 System.out.println(n...

java怎么获取当前时间 不是电脑显示的时间

你这个就是当前时间和你说的电脑显示时间两个是一样的= ="Calendar.getInstance().getTime()&lt;---系统时间 抓网路时间的方法 大陆区请自行换抓取网址 / 网路时间 return / public String date() { String date = null;try { URL url = new URL("https://www.google.com.tw");URLConnection...

java网络编程中,想获得网络时间

Date date = new Date(time); System.out.println("date:"+date.toString()); System.out.println(new SimpleDateFormat("yyyy-MM-dd hh-mm-ss").format(date)); }这个可以获得网络时间 Socket conn = new Socket("stdtime.gov.hk", 13);中的stdtime.gov.hk这个是主机,13是端口 ...

java中怎样获取当前时间?

1.获取当前时间,并格式化为(年-月-日 时:分:秒)。Date t = new Date();SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println(df.format(t));打印输出结果如下图:2.将java.util.Date转换为java.sql.Date格式。java.sql.Date sqld = new java....

“java”中怎么得到当前时间的小时?

1、通过Date类来获取当前时间。Date day=new Date()SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")System.out.println(df.format(day))2、通过System类中的currentTimeMillis方法来获取当前时间。SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); ...

Java中获取当前系统对象的时间

在Java中,获取当前系统对象的时间可以通过多种方式实现。首先,使用`java.util.Date`类是最直接的方法。创建一个`Date`对象,如`Date date = new Date();`,这个操作会获取系统当前的日期和时间。在控制台输出时,你会看到类似于"Fri Nov 30 19:40:37 CST 2018"的格林威治时间。然而,这可能不...

编程在浏览器状态栏输出当前系统时间。 java高手速度

你说的跑马灯效果吧?在浏览器状态栏 显示 IP地址 时间 等等的网络有很多JS脚本代码的 我给你一个参考下: var msg="这是一个跑马灯效果的JavaScript文档"; //这里在状态栏显示的 可以换成dataget()就是当前时间了 var interval = 100;var spacelen = 120;var space10=" ";var seq=0;...

java调用实时时间的有方法吗?

1、JAVA 获取当前实时时间或日期,都可以通过 java.util.Date 类来获取。2、调用 new java.util.Date().getTime(); 这个方法获取的就是当前的时间,然后根据需要在进行格式化显示,格式化类为:SimpleDateFormat。3、具体的代码如下图所示。

java获取服务器当前时间 js获取当前时间戳 java获取时间戳 java得到当前时间 java获取本地时间 java获取时间的函数 java获取当前年 java输出当前时间 eclipse获取当前时间
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何把手机里的视频转成vr格式? 家里几个地方发现了很小的颗粒状的黑色物体,不多,每处只有一两个,请问... 家里地上有黑色的小椭圆形不知道是不是虫屎 (1)求f(十二分之派)的值,(2)求f(x)的值域。求详细过程必采纳!!! ...ax+1a(1-x)(a&gt;0),f(x)在区间[0,1]上最小值为g(a),求函数h(x)=(1... 设函数 f ( x )定义在(0,+∞)上, f (1)=0,导函数 , .(1)求 的单调区间... ...1)若f(0)≥1,求a的取值范围(2)求f(x)的最小值 (3)设函数h(x)=f... ...g(x)=f(x)+f'(x)是奇函数。(1)求f(x)的表达式(2)讨论f(x ...f(x)=x 2 ﹣ax,x∈[1,+∞).(1)求f(x)的最小值g(a);(2)求函数h(a... 设f(x)=x²-4x+4,x∈[a,a+1](a∈R). (1)求函数f(x)的最小值g(a)的 IDC网络故障是什么 如何获得网页的具体时间,校对本地电脑系统时间 翻译该文 java获取网络当前时间 时间不对 请问, delphi 如何获取internet时间? java代码怎样获取internet标准时间? 如何用java程序获取取internet标准时间 网络date是什么意思? 美团优选我推荐给新人我的另一个新码购买了产品是不是没有奖励? Microsoft Visio里画电路图怎么电阻的符号不对啊 求visio电路图、流程图!!! VISIO如何画变电站电气主接线图 visio电路图中如何旋转电阻 在Visio中怎么画高中电学那样的原理图 visio画电路图 visio画电路图,这个元件眼瞅瞎了也没找到,求好心人指路!!! visio2010画电路图时,两条导线连在一起的交点怎么画出来 支付宝邀请新用户有红包,微信有这种活动吗? 如何在没网的情况下把电脑的文件传到手机上 没网手机怎么传文件到电脑上 重装系统后为什么桌面总是会有一个DATE文件夹 windows 7 Internet explorer 8 appdate文件夹问题(专业人士作答) Java中如何设置Date对象的年月日 INTERNET 的浏览器是 7。0下载与安装步骤 html input date 浏览器支持吗 如何查询微信生活缴费的缴费记录? 余额怎么查,家里的电费余额? 手机上怎么查电费的明细? 手机怎样查电费余额查询? 如何在手机上查询电费余额? 想了解一下,怎样在支付宝查询电费明细呢?我都是直接在生活缴费那里缴费的,无办法查明细的? 中行手机银行生活缴费记录怎么查询? 邀请新人开通微信零钱通有奖励吗 创业无息贷款需要个人营业执照办理什么证件 如何用营业执照办无息贷款? 用营业执照在银行能办到无息贷款吗?需要什么手续? 营业执照可以贷款20万吗?20万的利息是多少?每月要还多少本金?贷款 个体工商户营业执照可以低利息贷款吗?- 问一问 营业执照20万无息贷款 请问一下用营业执照贷款,最多能贷多少,有没有利息