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进行反向代理到目标服务 ...
随机推荐
- python的运算符与表达式
Python运算符与表达式 1. 运算符分类 运算符主要分5种: 1. 算术运算符 2. 比较运算符 3. 位运算符 4. 逻辑运算符 5. 成员运算符 6. 身份运算符 7. 赋值运算符 1. 算术 ...
- Mysql--执行计划 Explain
0 介绍 0.1 是什么 使用 Explain 关键字可以模拟优化器执行 Sql 查询语句,从而知道 Mysql 是如何处理 Sql 的. 0.2 用法 Explain + Sql语句 0.3 执行计 ...
- HTTP Status Codes 查询表
Web项目中经常会出现各种状态码,今天看到一个博客,挺不错,记录下来.
- /bin/bash 常用命令
ls -a 查看一切文件 ls -l 查看目录文件信息 clear 清屏(信息保留屏幕) reset 清屏(所有信息) ls *.txt 查看所有txt文件 wc 统计文件 -l 行数: - c 统计 ...
- Python中迭代输出(index,value)的几种方法
需求如下:迭代输出序列的索引(index)和索引值(value). 1.创建测试列表: >>> lst = [1,2,3,4,5] 2.实现方法如下: #方法1:range()+le ...
- ABP文档笔记 - 配置、设置、版本、功能、权限
配置 全局仅一个单例,保存一组配置信息,一般直接在模块的预启动事件中赋值or修改.没有Scope划分,无论租户还是房东亦或者用户读取的值都不会有差异.每个模块都可以扩展这个配置. 设置 它没有层级关系 ...
- Nginx之(二)Nginx安装
首先从官网上http://nginx.org/下载最新的stable version源码,当前最新版本为nginx-1.10.2.tar.gz. 2.1 configure 解压之后,会发现里面有一个 ...
- Dynamics CRM2016 The value of field on record of type entity is outside the valid range问题的解决方法
今天在用web api创建一条记录时报了个标题里的错,咋看这错说的很明白了,属性字段的值超范围了,但咱们看下具体的问题 请求url是这样的http://xx/api/data/v8.0/new_rec ...
- DISC社交风格测试题--老虎 孔雀 考拉 猫头鹰
凭直觉,迅速回答 "我是谁",而不是"我应该是谁,或我想我是谁". 1.关于人生观,我的内心其实是: A 希望能够有尽量多的人生体验,所以会有非常多样化的想法. ...
- Device Mapper 代码分析
Device Mapper(DM)是Linux 2.6全面引入的块设备新构架,通过DM可以灵活地管理系统中所有的真实或虚拟的块设备. DM以块设备的形式注册到Linux内核中,凡是挂载(或者说&quo ...