当前位置:  技术问答>java相关

请问; 在JAVA 中怎样得到网卡的地址?

    来源: 互联网  发布时间:2015-10-12

    本文导语:  请问; 在JAVA 中怎样得到网卡的地址?  用纯JAVA语言来做,谢谢! | 以下的方法可以得到我本机器的网卡的型号不知道 你的机器是不是好使 import java.lang.*; import java.io.*; import java.util.*; /**  * ...

请问; 在JAVA 中怎样得到网卡的地址?  用纯JAVA语言来做,谢谢!

|
以下的方法可以得到我本机器的网卡的型号不知道
你的机器是不是好使
import java.lang.*;
import java.io.*;
import java.util.*;

/**
 * @author Jackliu
 * 
 */
public class Util_syscmd{

/**
 * @param shellCommand
 * 
 */
public Vector execute(String shellCommand){
try{
Start(shellCommand);
Vector vResult=new Vector();
DataInputStream in=new DataInputStream(p.getInputStream());
BufferedReader reader=new BufferedReader(new 

InputStreamReader(in));

String line;
do{
line=reader.readLine();
if (line==null){
break;
}
else{
vResult.addElement(line);
}
}while(true);
reader.close();
return vResult;

}catch(Exception e){
//error
return null;
}
}
/**
 * @param shellCommand
 * 
 */
public void Start(String shellCommand){
try{
if(p!=null){
kill();
}
Runtime sys= Runtime.getRuntime();
p=sys.exec(shellCommand);
}catch(Exception e){
System.out.println(e.toString());
}
}
/**
kill this process
*/
public void kill(){
if(p!=null){
p.destroy();
p=null;
}
}

Process p;
}



 


然后设计一个GetPhysicalAddress类,这个类用来调用Util_syscmd类的execute()方法,执行cmd.exe/c ipconfig/all命令,并解析出网卡物理ip地址。getPhysicalAddress()方法返回网卡的物理地址,如果机器中没有安装网卡或操作系统不支持ipconfig命令,返回not find字符串 



 
import java.io.*;
import java.util.*;

class GetPhysicalAddress{
        //网卡物理地址长度
        static private final int _physicalLength =16;
        
        public static void main(String[] args){               
                //output you computer phycail ip address
                System.out.println(getPhysicalAddress());
        }
        
        static public String getPhysicalAddress(){
                Util_syscmd shell =new Util_syscmd();
                String cmd = "cmd.exe /c ipconfig/all";
                Vector result ;
                result=shell.execute(cmd);  
                return parseCmd(result.toString());      
        }
        
        //从字符串中解析出所需要获得的字符串
        static private String parseCmd(String s){
                String find="Physical Address. . . . . . . . . :";
                int findIndex=s.indexOf(find);
                if (findIndex==-1)
                        return "not find";
                else
                        return 

s.substring(findIndex+find.length()+1,findIndex+find.length()+1+_physicalLength);
                
                
        }
}

    
 
 

您可能感兴趣的文章:

  • 我在安装netware 操作系统时, 在选择网卡型号时, 找不到我的网卡的型号, 请问怎样办?
  • Red hat 9.0 无法识别USB移动硬盘, 无法识别网卡和无线网卡,请问如何安装驱动?
  • 请问 如何在 solaris 下装 网卡驱动(网卡不能被识别)
  • 我的网卡在redhat7.3下不能自动驱动,但我有for linux的驱动程序,请问如何才能驱动我的网卡,我是菜菜,请详细说明,谢谢!
  • 请问,在SCOUNIX下,如何更改网卡的MAC地址?
  • 我在linux中把 网卡删除了,请问如何将他安装?
  • 要写一个无线网卡的驱动,请问怎么下手?
  • 请问是不是有的网卡linux不认???
  • 请问在red hat linux7.3怎么装网卡
  • 请问在文本终端下,怎么用shell命令使网卡发送数据?
  • 请问如何在内核中得到无线网卡IP?
  • 请问:我如何指定网卡进行监听?
  • 请问如何在以安装好的linux下装网卡?
  • 请问如何为一块网卡设置多ip?
  • 问题:网卡始终是Inactive(没有激活)状态,也上不了网,请问?
  • 请问网卡为什么不能激活
  • 请问怎么设置网卡的混杂模式
  • 请问Fedora Core 5是否支持无线网卡?
  • 请问在DOS下联网时,如何才能改网卡的I/O地址
  • 请问如何在REDHAT 9下安装3c509b网卡驱动
  • 菜问一则:请问用什么命令可得到系统路径
  • 请问:使用System.getProperty(),或者如何得到属性文件的路径
  • 请问调用那个方法能够得到变量类型的返回值?
  • 请问Java如何得到本地机器名字?
  • 请问各位,getYear()得到的当前年,怎么是102?
  • 请问如何得到表单中的combox中的值
  • 请问怎样能得到rs的记录集
  • 请问如何得到系统的时间,然后将时间形式改为:16:00:00 PM ?
  • 请问在脚本里怎么得到一个程序运行的返回值,脚本怎么返回值?
  • 高分请教:请问怎么才能得到最近所有有关文件操作(新建,删除等)的记录
  • 请问:如何得到自己机器的ip和子网掩码???
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 知道IP地址,请问如何获取这个IP地址对应网卡的mac地址?
  • 请问怎样编程获得本机的MAC地址?还有能不能设置本机MAC地址?
  • 请问硬件原理图如何分析,获取每个芯片各自的基地址和地址空间。
  • 请问目标文件里左边的一排地址是什么意思?
  • 请问关于保护模式下逻辑地址的一个问题
  • 请问哪里可以下载IP地址段对应城市的信息?高分回报!
  • 请问大家什么是internet地址族?
  • 请问jdk1.4的文档下载地址?
  • 请问:GTK有没有IP地址输入框,及状态条?
  • 请问哪位知道RedHat Advance Server2.x下载地址
  • 请问在linux下怎样修改ip地址!!急,在线等
  • 请问有没有shell命令可以知道机器的网卡地址?
  • 请问各位,在freebsd里面用什么命令查看自己的ip地址,谢谢!
  • 我没有图形界面,请问如何用ifconfig命令为网卡添加两个IP地址
  • 请问:能够在网页文件中自己定义出现在地址栏中的url吗?
  • 请问哪位知道Cloudscape下载地址?
  • 请问jBUILDER7.0的下载地址?
  • 请问同一块内存,在uboot下访问和在krnl下访问,地址是否一样?
  • 请问如何删除IE地址拦里的中文网址?
  • 请问如何用iptables禁止一个IP地址范围
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3