JAVA获取计算机的IP、名称、操作系统等信息
- import java.io.BufferedReader;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.net.InetAddress;
- import java.net.NetworkInterface;
- import java.util.ArrayList;
- import java.util.Formatter;
- import java.util.List;
- import java.util.Locale;
- import java.util.Map;
- import java.util.Properties;
- public class getComputer {
- //通过截取cmd流方式得到计算机的配置信息(不好)
- public static List<String> getIpAddress(){
- Process p = null;
- List<String> address = new ArrayList<String>();
- try{
- p = new ProcessBuilder("ipconfig","/all").start();
- }catch(Exception e){
- return address;
- }
- StringBuffer sb = new StringBuffer();
- //读取进程输出值
- InputStream inputStream = p.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
- String s = "";
- try{
- while((s=br.readLine())!=null){
- sb.append(s+"\n");
- }
- }catch(Exception e){
- e.printStackTrace();
- }finally{
- try{
- inputStream.close();
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- System.out.println(sb);
- return address;
- }
- public static void getIpconfig(){
- Map<String,String> map = System.getenv();
- System.out.println(map.get("USERNAME"));//获取用户名
- System.out.println(map.get("COMPUTERNAME"));//获取计算机名
- System.out.println(map.get("USERDOMAIN"));//获取计算机域名
- }
- //得到计算机的ip地址和mac地址
- public static void getConfig(){
- try{
- InetAddress address = InetAddress.getLocalHost();
- NetworkInterface ni = NetworkInterface.getByInetAddress(address);
- //ni.getInetAddresses().nextElement().getAddress();
- byte[] mac = ni.getHardwareAddress();
- String sIP = address.getHostAddress();
- String sMAC = "";
- Formatter formatter = new Formatter();
- for (int i = 0; i < mac.length; i++) {
- sMAC = formatter.format(Locale.getDefault(), "%02X%s", mac[i],
- (i < mac.length - 1) ? "-" : "").toString();
- }
- System.out.println("IP:" + sIP);
- System.out.println("MAC:" + sMAC);
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- //得到计算机的ip,名称,操作系统名称,操作系统版本
- public static void Config(){
- try{
- InetAddress addr = InetAddress.getLocalHost();
- String ip=addr.getHostAddress().toString(); //获取本机ip
- String hostName=addr.getHostName().toString(); //获取本机计算机名称
- System.out.println("本机IP:"+ip+"\n本机名称:"+hostName);
- Properties props=System.getProperties();
- System.out.println("操作系统的名称:"+props.getProperty("os.name"));
- System.out.println("操作系统的版本:"+props.getProperty("os.version"));
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- //java环境
- public static void all(){
- Properties props=System.getProperties();
- System.out.println("Java的运行环境版本:"+props.getProperty("java.version"));
- System.out.println("Java的运行环境供应商:"+props.getProperty("java.vendor"));
- System.out.println("Java供应商的URL:"+props.getProperty("java.vendor.url"));
- System.out.println("Java的安装路径:"+props.getProperty("java.home"));
- System.out.println("Java的虚拟机规范版本:"+props.getProperty("java.vm.specification.version"));
- System.out.println("Java的虚拟机规范供应商:"+props.getProperty("java.vm.specification.vendor"));
- System.out.println("Java的虚拟机规范名称:"+props.getProperty("java.vm.specification.name"));
- System.out.println("Java的虚拟机实现版本:"+props.getProperty("java.vm.version"));
- System.out.println("Java的虚拟机实现供应商:"+props.getProperty("java.vm.vendor"));
- System.out.println("Java的虚拟机实现名称:"+props.getProperty("java.vm.name"));
- System.out.println("Java运行时环境规范版本:"+props.getProperty("java.specification.version"));
- System.out.println("Java运行时环境规范供应商:"+props.getProperty("java.specification.vender"));
- System.out.println("Java运行时环境规范名称:"+props.getProperty("java.specification.name"));
- System.out.println("Java的类格式版本号:"+props.getProperty("java.class.version"));
- System.out.println("Java的类路径:"+props.getProperty("java.class.path"));
- System.out.println("加载库时搜索的路径列表:"+props.getProperty("java.library.path"));
- System.out.println("默认的临时文件路径:"+props.getProperty("java.io.tmpdir"));
- System.out.println("一个或多个扩展目录的路径:"+props.getProperty("java.ext.dirs"));
- System.out.println("操作系统的名称:"+props.getProperty("os.name"));
- System.out.println("操作系统的构架:"+props.getProperty("os.arch"));
- System.out.println("操作系统的版本:"+props.getProperty("os.version"));
- System.out.println("文件分隔符:"+props.getProperty("file.separator"));//在 unix 系统中是"/" System.out.println("路径分隔符:"+props.getProperty("path.separator"));//在 unix 系统中是":" System.out.println("行分隔符:"+props.getProperty("line.separator"));//在 unix 系统中是"/n" System.out.println("用户的账户名称:"+props.getProperty("user.name"));
- System.out.println("用户的主目录:"+props.getProperty("user.home"));
- System.out.println("用户的当前工作目录:"+props.getProperty("user.dir"));
- }
- public static void main(String[] args) {
- all();
- }
- }
JAVA获取计算机的IP、名称、操作系统等信息的更多相关文章
- java获取本机IP地址
转载自:http://blog.csdn.net/thunder09/article/details/5360251 在网上找了几个用java获取本机IP地址的代码,发现都少都有些不完美,自己整理了一 ...
- java获取本机ip(排除虚拟机等一些ip)最终解,总算找到方法了
本文参考https://blog.csdn.net/u011809209/article/details/77236602 本文参考https://blog.csdn.net/yinshuomail/ ...
- 详谈再论JAVA获取本机IP地址
首先,你如果搜索“JAVA获取本机IP地址”,基本上搜到的资料全是无用的.比如这篇:http://www.cnblogs.com/zrui-xyu/p/5039551.html实际上的代码在复杂环境下 ...
- [Java]通过java获取计算机名
通过java获取计算机名 String hostname = "Unknown"; try { InetAddress addr; addr = InetAddress.getLo ...
- PHP获取访客IP、地区位置信息、浏览器、来源页面
不多说了,每个方法都注释了,可以直接用: <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function ge ...
- IOS中使用百度地图定位后获取城市坐标,城市名称,城市编号信息
IOS中使用百度地图定位后获取城市坐标,城市名称,城市编号信息 /**当获取到定位的坐标后,回调函数*/ - (void)didUpdateBMKUserLocation:(BMKUserLocati ...
- JAVA获取计算机CPU、硬盘、主板、网络等信息
通过使用第三方开源jar包sigar.jar我们可以获得本地的信息 1.下载sigar.jar sigar官方主页 sigar-1.6.4.zip 2.按照主页上的说明解压包后将相应的文件copy到j ...
- Java 获取Linux 的IP地址
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- Nginx反向代理后,java获取客户端真实IP地址
一般情况下,java获取客户端IP地址的方法为request.getRemoteAddr();但这只是在没有网关或者代理的情况下,如果客户端将请求发送到nginx,再由nginx进行反向代理到目标服务 ...
随机推荐
- mac下IDLE无法输入中文的问题
解决方法是下载安装新版本的 Tcl/Tk 下载地址:http://www.activestate.com/activetcl/downloads 注意要下最新的8.5.18.0版本,安装好了再重启ID ...
- Delphi7通过SendMessage来实现默认打印机的切换
具体代码 procedure SetDefaultPrinter(NewDefPrinter: string); var ResStr: array[0..255] of Char; begin St ...
- Object Relational Tutorial 对象关系教程
The SQLAlchemy Object Relational Mapper presents a method of associating user-defined Python classes ...
- java中什么是序列化和反序列化
序列化:能够把一个对象用二进制的表示出来. 类似我第一个字节表示什么属性名词,第二个字节表示什么属性值,第几个字段表示有几个属性等. 而且这个二进制可以写到硬盘或者在网络上传输但不会破坏他的结构.一般 ...
- mac下怎么删除隐藏文件比如 .Trashes文件
U盘和移动硬盘接入Mac时会产生.Trashes,.Spotlight-V100,.fseventsd等文件 每插入Mac一次,都会检查是否有这些文件,如果没有,就会创建这些文件 特别是有时候,在文件 ...
- 用IO创建并格式化分区
转载:http://raylinn.iteye.com/blog/570274 BOOL Result; // used to read bad DeviceIoControl calls DWORD ...
- Java中的网络支持InetAddress&URL
针对网络通信的不同层次,Java提供的网络功能有四大类 InetAddress:用于标识网络上的硬件资源.(说白了就是IP地址的相关信息) URL:统一资源定位符,通过URL可以直接读取或写入网络上的 ...
- Linux下安装oracle的一般步骤
1.配置内核参数2.创建用户和用户组3.创建安装目录4.配置oracle用户环境5.安装数据库软件6.创建数据库7.配置监听
- node安装教程
推荐安装教程博客: https://www.cnblogs.com/zhouyu2017/p/6485265.html
- Node.js Domain 模块
Node.js Domain(域) 简化异步代码的异常处理,可以捕捉处理try catch无法捕捉的异常.引入 Domain 模块 语法格式如下: var domain = require(" ...