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进行反向代理到目标服务 ...
随机推荐
- 备忘:MySQL中修改表中某列的数据类型、删除外键约束
-- MySQL中修改表中某列的数据类型 ALTER TABLE [COLUMN] 表名 MODIFY 列名 列定义; -- 删除外键约束 SHOW CREATE TABLE 表名; -- 复制CON ...
- Mysql锁机制--概念、分类及基础命令
Mysql 系列文章主页 =============== 1 概念 在 Java 程序中,当多线程并发访问某个资源的时候,如果有非线程安全的操作,那么需要通过加锁来保护之.同理,在 Mysql 中,如 ...
- js求和运算在可变参数的情况下ES3、ES5和ES6的写法区别
//ES3.ES5的写法 function foo(){ var arr = Array.prototype.slice.call(arguments); var sum = 0; arr.forEa ...
- ERP中的地区管理
地区管理 地区管理主要实现地区数据的添加.编辑.查看.启用.禁用等功能,另外还包含地区选择控件封装. 业务功能点: 地区数据查看:地区列表树状展现,列表增加省.市.区.县.乡图标. 地区选择控件:选择 ...
- java连接sqlserver2008
java连接sqlserver2008时应有sqljdbc4.jar驱动包.连接的示例代码如下: import java.sql.*; public class ConnectSQL { public ...
- python笔记三(list、tuple)
一.list list的增删改查 #增, classmates.append("nadech") #在末尾追加一个元素 classmates.insert(1,"agui ...
- beta 分布的详细介绍(转载)
目前看到的关于beta分布最好的一个解释,由于贴过来格式不好看,所以附上链接: http://www.datalearner.com/blog/1051505532393058
- sourcestress 问题解决方案
描述:在Windows系统下,在保证GitHub上的账号和密码正确的情况下,在push时候,输入正确的账号和密码后,却是提醒无效的账户密码. 解决方法:在C:\Users\...\AppData\Lo ...
- django模板语言中的extends,block和include
extends和block一起用 它们用于母版和子版的继承 在母版html中将一些需要替换的部分用{% block xxx %}...{% endblock %}括起来, 在子版html中,在第一行需 ...
- jQuery 效果 – 淡入淡出
在在jQuery中可以通过四个方法来实现元素的淡入淡出,这四个方法分别是:fadeIn().fadeOut().fadeToggle() 以及 fadeTo(),本文通过实例来为你讲解如何在jQuer ...