从网上收集的一些关于java获取操作系统信息的方法,现在总结一下:

1获取本机的IP地址:

  1. private static String getIpAddress() throws UnknownHostException {
  2. InetAddress address = InetAddress.getLocalHost();
  3. return address.getHostAddress();
  4. }

2获得网卡地址

  1. public static String getMACAddress(){
  2. String address = "";
  3. String os = System.getProperty("os.name");
  4. String osUser=System.getProperty("user.name");
  5. if (os != null && os.startsWith("Windows")) {
  6. try {
  7. String command = "cmd.exe /c ipconfig /all";
  8. Process p = Runtime.getRuntime().exec(command);
  9. BufferedReader br =new BufferedReader(new InputStreamReader(p.getInputStream()));
  10. String line;
  11. while ((line = br.readLine()) != null) {
  12. if (line.indexOf("Physical Address") > 0) {
  13. int index = line.indexOf(":");
  14. index += 2;
  15. address = line.substring(index);
  16. break;
  17. }
  18. }
  19. br.close();
  20. return address.trim();
  21. }
  22. catch (IOException e) {
  23. }
  24. }
  25. return address;
  26. }

3获得操作系统帐号

  1. String osUser=System.getProperty("user.name");

4获得操作系统版本

  1. 1. import java.util.Properties;
  2. 2.
  3. 3. Properties props=System.getProperties(); //获得系统属性集
  4. 4. String osName = props.getProperty("os.name"); //操作系统名称
  5. 5. String osArch = props.getProperty("os.arch"); //操作系统构架
  6. 6. String osVersion = props.getProperty("os.version"); //操作系统版本

5一些常用的信息获得

  1. public static String getProperty(String key)
  2. 键   相关值的描述
  3. java.version    Java 运行时环境版本
  4. java.vendor     Java 运行时环境供应商
  5. java.vendor.url     Java 供应商的 URL
  6. java.home   Java 安装目录
  7. java.vm.specification.version   Java 虚拟机规范版本
  8. java.vm.specification.vendor    Java 虚拟机规范供应商
  9. java.vm.specification.name  Java 虚拟机规范名称
  10. java.vm.version     Java 虚拟机实现版本
  11. java.vm.vendor  Java 虚拟机实现供应商
  12. java.vm.name    Java 虚拟机实现名称
  13. java.specification.version  Java 运行时环境规范版本
  14. java.specification.vendor   Java 运行时环境规范供应商
  15. java.specification.name     Java 运行时环境规范名称
  16. java.class.version  Java 类格式版本号
  17. java.class.path     Java 类路径
  18. java.library.path   加载库时搜索的路径列表
  19. java.io.tmpdir  默认的临时文件路径
  20. java.compiler   要使用的 JIT 编译器的名称
  21. java.ext.dirs   一个或多个扩展目录的路径
  22. os.name     操作系统的名称
  23. os.arch     操作系统的架构
  24. os.version  操作系统的版本
  25. file.separator  文件分隔符(在 UNIX 系统中是“/”)
  26. path.separator  路径分隔符(在 UNIX 系统中是“:”)
  27. line.separator  行分隔符(在 UNIX 系统中是“/n”)
  28. user.name   用户的账户名称
  29. user.home   用户的主目录
  30. user.dir    用户的当前工作目录

java获取当前操作系统的信息的更多相关文章

  1. java获取天气预报的信息

    运行效果: 主要功能: 1,jsp页面输入省份和城市 根据条件获取当地的天气信息 2,java代码 利用第三方的省份和城市的路径地址 本工程主要实现java获取天气预报的信息步骤1,创建工程weath ...

  2. Java 获取到配置文件信息

    Java程序将数据库或者服务器IP写入到代码中,难免缺少灵活性. 如果写入到配置文件,部署到不通服务器上,只需要修改配置文 件即可. Java怎么读取配置文件 /** * 获取到配置文件信息 * @p ...

  3. Java 获取所有子类信息

    我以前的博客(Java Scala获取注解的类信息)介绍过通过Reflections工具通过使用特定注解的类的信息,其实本工具也可以获取接口,抽象类,类等的所有子类信息.使用方法如下: Reflect ...

  4. java获取类的信息

    关键技术剖析 1.java.lang.reflect包实现了java的反射机制,在使用反射机制时,需要导入该包. 2.Class类的forName方法能够根据类名加载类,获得类的Class对象. Cl ...

  5. Java获取系统相关信息System.getProperty()

    java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目 ...

  6. JAVA获取系统相关信息

    Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00003596 获取JRE系统相关参数 java 通过S ...

  7. Java获取电脑硬件信息

    package com.szht.gpy.util; import java.applet.Applet; import java.awt.Graphics; import java.io.Buffe ...

  8. JAVA获取不同操作系统的分隔符等参数

    import java.util.Properties; public class SeparatorUtils { /* system properties to get separators */ ...

  9. java获取来访者mac信息

    根据IP获取对应的Mac地址,支持win10+Linux package com.simonjia.util.other; /** * @Author: SimonHu * @Date: 2019/6 ...

随机推荐

  1. 打包python脚本为exe可执行文件-pyinstaller和cx_freeze示例

    本文介绍使用cx_freeze和pyinstaller打包python脚本为exe文件 cx_freeze的使用实例 需要使用到的文件wxapp.py, read_file.py, setup.py ...

  2. Allegro中板子边框不封闭导致的z-copy无法用的问题

    画一个不规则的边框,有半圆形状,导致边框不封闭,无法使用Z-COPY命令,下边是解决办法: 1 画好Outline后,选择 shape -> Compose Shape , options选项卡 ...

  3. DC-EPC小结

    今晚上修完了最后2个学时的EPC(课程主页),这意味着本学期的DC和共20个学时的EPC到此结束,这有可能是我人生中最后一次上英语课. Tom是我DC课的老师,EPC起于Tom和Micheal的Deb ...

  4. [转] c和python利用setsockopt获得端口重用

    假如端口被socket使用过,并且利用socket.close()来关闭连接,但此时端口还没有释放,要经过一个TIME_WAIT的过程之后才能使用.为了实现端口的马上复用,可以选择setsockopt ...

  5. C/C++ 内联函数

    内联函数具备一般函数的性质,但是不需要调用,而是在编译阶段,会用函数体替换函数名被调用的地方.可以节省调用时间(进出栈.保存上下文). 在编译层面和宏的作用相同.内联函数的展开在编译阶段,宏展开在预处 ...

  6. redis常见性能问题和解决方案?

    Master写内存快照,save命令调度rdbSave函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性暂停服务,所以Master最好不要写内存快照. Master AOF持久化, ...

  7. NOIP2015 心得

    NOIP2015的复赛已经过去一个多星期了,成绩也已经出来了,作为一个大(ruo)山(sheng)东的蒟蒻,在学了一年之后拿到了255的成绩.这个成绩并不是很好,但也算在我的预料之内. 第一天第一题水 ...

  8. VBS基础篇 - 常量

    常量:指的是在程序运行过程中其值保持不变的量,它用来保存固定不变的数值,字符串等常数 . 常量的定义:在vbscript中使用使用 Const 指令可以创建名称具有一定含义的字符串型或数值型常量,并给 ...

  9. 数据库SQLiteDatabase

    package com.baclock.entity; import android.provider.BaseColumns; /** * Created by Jack on 5/4/2016. ...

  10. HDU 5637 Transform 单源最短路

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5637 题意: http://bestcoder.hdu.edu.cn/contests/contes ...