首页后端开发JAVAjavaip生成代码 java代码自动生成

javaip生成代码 java代码自动生成

时间2023-04-14 02:09:02发布访客分类JAVA浏览1303
导读:求java中string类型转化为ip地址的代码,可以是任意字符串,如果不是ip的话做错误处理 用split(“.” 将字符串分割成四段,再转换成数字,最后转换成二进制串,就是ip.。如果不够四段或者不是数字等等就是错误求java获取手机i...

求java中string类型转化为ip地址的代码,可以是任意字符串,如果不是ip的话做错误处理

用split(“.”)将字符串分割成四段,再转换成数字,最后转换成二进制串,就是ip.。如果不够四段或者不是数字等等就是错误

求java获取手机ip或者平板ip的代码

//获取ip地址

public String getLocalIpAddress()

{

try {

String ipv4;

ArrayListNetworkInterface nilist = Collections.list(NetworkInterface.getNetworkInterfaces());

for (NetworkInterface ni: nilist)

{

ArrayListInetAddress ialist = Collections.list(ni.getInetAddresses());

for (InetAddress address: ialist)

{

if (!address.isLoopbackAddress() InetAddressUtils.isIPv4Address(ipv4=address.getHostAddress()))

{

return ipv4;

}

}

}

} catch (SocketException ex)

{

//Log.e(LOG_TAG, ex.toString());

}

return null;

}

java获取局域网ip地址 具体代码

import java.io.*;

import java.util.*;

import java点虐.InetAddress;

public class Ip{

static public HashMap ping; //ping 后的结果集

public HashMap getPing(){ //用来得到ping后的结果集

return ping;

}

//当前线程的数量, 防止过多线程摧毁电脑

static int threadCount = 0;

public Ip() {

ping = new HashMap();

}

public void Ping(String ip) throws Exception{

//最多30个线程

while(threadCount30)

Thread.sleep(50);

threadCount +=1;

PingIp p = new PingIp(ip);

p.start();

}

public void PingAll() throws Exception{

//首先得到本机的IP,得到网段

InetAddress host = InetAddress.getLocalHost();

String hostAddress = host.getHostAddress();

int k=0;

k=hostAddress.lastIndexOf(".");

String ss = hostAddress.substring(0,k+1);

for(int i=1; i =255; i++){ //对所有局域网Ip

String iip=ss+i;

Ping(iip);

}

//等着所有Ping结束

while(threadCount0)

Thread.sleep(50);

}

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

Ip ip= new Ip();

ip.PingAll();

java.util.Set entries = ping.entrySet();

Iterator iter=entries.iterator();

String k;

while(iter.hasNext()){

Map.Entry entry=(Map.Entry)iter.next();

String key=(String)entry.getKey();

String value=(String)entry.getValue();

if(value.equals("true"))

System.out.println(key+"--"+value);

}

}

class PingIp extends Thread{

public String ip; // IP

public PingIp(String ip){

this.ip=ip;

}

public void run(){

try{

Process p= Runtime.getRuntime().exec ("ping "+ip+ " -w 300 -n 1");

InputStreamReader ir = new InputStreamReader(p.getInputStream());

LineNumberReader input = new LineNumberReader (ir);

//读取结果行

for (int i=1 ; i 7; i++)

input.readLine();

String line= input.readLine();

if (line.length() 17 || line.substring(8,17).equals("timed out"))

ping.put(ip,"false");

else

ping.put(ip,"true");

//线程结束

threadCount -= 1;

} catch (IOException e){ }

}

}

}

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: javaip生成代码 java代码自动生成
本文地址: https://pptw.com/jishu/2931.html
最新java五子棋代码 java五子棋代码压缩包 vb点虐编写网站 vbnet webclient

游客 回复需填写必要信息