「java获取当前网速」js获取当前网速

博主:adminadmin 2023-01-26 20:45:13 520

本篇文章给大家谈谈java获取当前网速,以及js获取当前网速对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java获取本机dns?

如何查看本机的DNS服务器?ipconfig其实是可以的。除此以外,还可以利用一个命令:在(开始-运行)cmd下输入netsh进入到netsh提示符再输入:int ip 进入到netsh interface ip 再输入dump这时候屏幕上出现当前连接的配置情况了这里必须介绍一下netsh到底是作什么用的!这个命令比较复杂,他包含了很多的子命令,所以这里只对部分命令进行讲解:1)查看本机IP:首先键入netsh,再netsh提示符下输入:interface 回车 之后:ip 回车 再之后:show address 回车 这样,就可以看到当前连接的IP地址和子网掩码。(其实这个命令不如ipconfig简单,也不如ipconfig/all全面)2)修改网络配置:接着上面的命令,我们使用:set address name=“本地连接” source=static addr=192.168.0.200 mask=255.255.255.0,这样就修改了当前的IP地址,用show address来看看(或者用ipconfig)3)显示一个完整的网络配置教本:刚才说过,第一个命令显示的信息不如ipconfig/all全面,不用着急,netsh再打印显示网络配置上,还是有自己的特色的!例如:再interface ip状态下输入:dump,会显示一个清单,显示所有本地连接(不管你是否使用~)与netstat -an不完全一样![]

如何查看自己当前的网速

1、如果是宽带网速,可在电脑进入运行程序,输入CMD,然后键入ping+空格+你的IP地址(+号无需输入),按回车键就可以了。

2、如果是联通宽带用户,可登陆网上营业厅 ,首页点击“我的联通”-“便民服务”-“宽带测速”,即可根据页面提示信息进行测速。也可以使用宽带号码登录联通手机营业厅客户端——查询——宽带业务查询——立即测试(“宽带测速”业务不支持免流)。

温馨提示:以上路径以实际显示信息为准。

java获取网络当前时间

如果你要获取的是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  

     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

java用上传一个文件测试网速怎么写代码

2楼回答的不全面,我们公司做过相同功能的代码。

思路是并发上传和下载文件。

计算规单位时间内网卡吞吐量。(直接可以百度,会用到动态库,代码不少。贴补上来的)

如果只计算java的文件上传和下载。不能代表当前设备的网速。

Android开发中,如何测当前网速?

原理: 到网上找个可以下载的apk 的URL,记住apk不要过大一般1M足够了.然后通过记录下载这个apk的时间和大小,算出当前网速.当然一个URL并不是很准确,要求精确的可以多下载几个

URL求平均值/span.

package com.panodic.settings.net;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

import java.net.URLConnection;

import com.panodic.settings.util.LogUtil;

import com.panodic.settings.util.NetUtil;

import com.panodic.settings.util.Util;

import com.panodic.settings.view.PatchItem;

import android.os.Bundle;

import android.os.Handler;

import android.os.Message;

import android.app.Activity;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.Window;

import android.widget.Button;

import android.widget.ProgressBar;

import android.widget.TextView;

import android.widget.Toast;

import com.panodic.settings.R;

public class MesureSpeed extends Activity implements OnClickListener {

private static final int LOADING = 0x111;

private static final int STOP = 0x112;

private ProgressBar mBar;

private int mProgressState;

private TextView mSpeed;

private Button mMeasureSpeed;

private PatchItem mBack;

private float mSpeedContent;

private String mAddr = "";

private String mAddr2 = "";

private String mAddr3 = "";

private Handler mHandler = new Handler(Util.sTaskRunner.getLooper());

private int testCount = 0;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_mesure_speed);

mSpeed = (TextView) findViewById(R.id.speed_content);

mMeasureSpeed = (Button) findViewById(R.id.mesure_speed);

mBack = (PatchItem) findViewById(R.id.patch_settings_net_speed);

mBar = (ProgressBar) findViewById(R.id.bar);

mMeasureSpeed.setOnClickListener(this);

mBack.setOnClickListener(this);

testCount = 0;

}

@Override

public void onClick(View v) {

if (mBack.isMyChild(v)) {

Util.finish(this);

} else if (v == mMeasureSpeed) {

mMeasureSpeed.setEnabled(false);

mBar.setVisibility(View.VISIBLE);

mProgressState = 0;

testCount = 0;

mBar.setProgress(mProgressState);

mHandler.removeCallbacks(null);

mHandler.postDelayed(new Runnable() {

@Override

public void run() {

measureSpeed(mAddr);

}

}, 0);

}

}

private Handler mProgressHandler = new Handler() {

@Override

public void handleMessage(Message msg) {

switch (msg.what) {

case LOADING:

mBar.setProgress(mProgressState);

break;

case STOP:

mBar.setVisibility(View.GONE);

setSpeed();

mMeasureSpeed.setEnabled(true);

break;

default:

break;

}

}

};

private void setSpeed() {

if (mSpeedContent = 1024) {

mSpeedContent = (float) ((mSpeedContent) / (1024 + 0.0));

mSpeedContent = (float) (((int) (mSpeedContent * 10) % 10 + 0.0) / 10 + (int) mSpeedContent);

mSpeed.setText(mSpeedContent + getString(R.string.m));

} else {

mSpeed.setText((int) mSpeedContent + getString(R.string.kb));

}

}

private void measureSpeed(String httpUrl) {

if (!NetUtil.isWifiConnected(this) !NetUtil.isWireConnected(this)) {

Toast.makeText(this, getString(R.string.no_net), Toast.LENGTH_SHORT)

.show();

mProgressHandler.sendEmptyMessage(STOP);

return;

}

int fileLen = 0;

long startTime = 0;

long endTime = 0;

final String fileName = "tmp.apk";

HttpURLConnection conn = null;

InputStream is = null;

FileOutputStream fos = null;

File tmpFile = new File("/sdcard/temp");

if (!tmpFile.exists()) {

tmpFile.mkdir();

}

final File file = new File("/sdcard/temp/" + fileName);

try {

URL url = new URL(httpUrl);

try {

conn = (HttpURLConnection) url.openConnection();

LogUtil.d("lening");

fileLen = conn.getContentLength();

LogUtil.d("len=" + fileLen);

if (fileLen = 0) {

mSpeedContent = 0;

mProgressHandler.sendEmptyMessage(STOP);

Toast.makeText(this, getString(R.string.conn_fail),

Toast.LENGTH_SHORT).show();

return;

}

startTime = System.currentTimeMillis();

is = conn.getInputStream();

fos = new FileOutputStream(file);

byte[] buf = new byte[256];

conn.connect();

if (conn.getResponseCode() = 400) {

Toast.makeText(this, getString(R.string.no_time),

Toast.LENGTH_SHORT).show();

mProgressHandler.sendEmptyMessage(STOP);

return;

} else {

while (true) {

if (is != null) {

int numRead = is.read(buf);

if (numRead = 0) {

break;

} else {

fos.write(buf, 0, numRead);

}

mProgressState += (int) (((numRead + 0.0) / (fileLen + 0.0)) * 1000000);

mProgressHandler.sendEmptyMessage(LOADING);

// LogUtil.d("numRead=" + numRead + " fileLen="

// + fileLen);

} else {

break;

}

}

}

endTime = System.currentTimeMillis();

} catch (IOException e) {

e.printStackTrace();

Toast.makeText(this, getString(R.string.no_permission),

Toast.LENGTH_SHORT).show();

} finally {

if (conn != null) {

conn.disconnect();

}

try {

if (fos != null) {

fos.close();

}

if (is != null) {

is.close();

}

} catch (IOException e1) {

e1.printStackTrace();

}

}

} catch (MalformedURLException e) {

e.printStackTrace();

}

mSpeedContent = fileLen / (endTime - startTime);

mProgressHandler.sendEmptyMessage(STOP);

}

}

如何获取到当前手机实时网速

若使用的是vivo手机,进入设置--通知与状态栏中,打开显示实时网速/显示网速的开关,即可在状态栏显示网速。部分机型需要下滑通知栏、或上滑打开控制中心,才可以看到网速。

关于java获取当前网速和js获取当前网速的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。