1、請問如何通過java獲取計算機的硬體情況?
參考下面方法:
把這個方法放到類下邊
public void testGetSysInfo() {
//這個是信息變數
String address = "";
//獲得系統名稱
String os = System.getProperty("os.name");
if (os != null && os.startsWith("Windows")) {
//抓異常
try {
//定義dos命令
String command = "cmd.exe /c ipconfig /all";
//執行dos命令
Process p = Runtime.getRuntime().exec(command);
BufferedReader br = new BufferedReader(new InputStreamReader(p
.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
if (line.indexOf("Physical Address") > 0) {
int index = line.indexOf(":");
index += 2;
address = line.substring(index);
break;
}
}
br.close();
logger.info("mac address:" + address.trim());
} catch (IOException e) {
logger.info("Error:" + e);
}
}
}
2、請問 Eclipse中用JAVA開發SWT時,如何獲得電腦硬體信息。比如電腦系統版本和CPU名字等。
CPU的信息,如果不執行外部程序命令是得不到的,Java本身沒有這個功能。
System.getProperty("os.name")可以得到操作系統名稱,os.arch可以得到操作系統架構信息,或許從這里可以得到CPU信息
Javadoc:
http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/lang/System.html#getProperties()
使用SWT的功能可以得到一些硬體的信息:
org.eclipse.swt.internal.extension.Extension
參考文章:
http://www.examda.com/Java/jichu/20090805/100030266.html
3、java如何讀取硬體信息 高手進
public class Main {
public static void main(String[] args) {
/* Total number of processors or cores available to the JVM */
System.out.println("Available processors (cores): " +
Runtime.getRuntime().availableProcessors());
/* Total amount of free memory available to the JVM */
System.out.println("Free memory (bytes): " +
Runtime.getRuntime().freeMemory());
/* This will return Long.MAX_VALUE if there is no preset limit */
long maxMemory = Runtime.getRuntime().maxMemory();
/* Maximum amount of memory the JVM will attempt to use */
System.out.println("Maximum memory (bytes): " +
(maxMemory == Long.MAX_VALUE ? "no limit" : maxMemory));
/* Total memory currently available to the JVM */
System.out.println("Total memory available to JVM (bytes): " +
Runtime.getRuntime().totalMemory());
/* Get a list of all filesystem roots on this system */
File[] roots = File.listRoots();
/* For each filesystem root, print some info */
for (File root : roots) {
System.out.println("File system root: " + root.getAbsolutePath());
System.out.println("Total space (bytes): " + root.getTotalSpace());
System.out.println("Free space (bytes): " + root.getFreeSpace());
System.out.println("Usable space (bytes): " + root.getUsableSpace());
}
}}
4、java怎樣獲取硬體設備傳輸過來的數據
調用java本地的介面實現和c語言的關聯,這個介面與c語言相關。
等於說java間接操作底層。硬體
5、java 代碼如何獲取用戶的硬體信息,就是判斷用戶是否用同一個手機或者同一台電腦或者同一個ipad訪問了
當用戶登錄進來時,把用戶信息放入session中,對用戶的每次行為都用一個計數器來記住,以此來達到限制用戶操作的次數。
6、如何用java語言獲得計算機硬體信息?
先定義一個結構SYSTEMINFO sysinfo(MSDN里有,在調用WIN API GetSystemInfo();根據返回值,可獲得系統全部信息!
7、java如何獲取遠程計算機的系統信息,cpu使用情況,磁碟使用情況等等
1、在遠程server里搭建一個http服務,並支持某種服務端語言(如.net或php之類)
2、用服務端語言獲取到伺服器的磁碟信息,把結果輸出
3、在本地用JS寫一段AJAX腳本,遠程請求服務端寫好的程序,得到結果,並展示給用戶
<html>
<head>
<title>提取硬碟序列號</title>
<script>
function disk() {//硬碟序列號 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_DiskDrive");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.signature + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
</script>
</head>
<body>
<input type="button" value="硬碟序列號" onclick="disk()">
</body>
</html>
在這上找的代碼:
對於寫過ASP或.net 的人來說,通過asp或.net 語言來獲得客戶端的硬體信息是很熟悉的.但如何通過javascript這種客戶端腳本來獲得客戶端的信息呢?請看以下實例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>javascript獲得客戶端硬體信息-www.web2bar.cn/</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET
7.1">
<meta name="vs_targetSchema"
content="http://schemas.microsoft.com/intellisense/ie5">
<script id=clientEventHandlersJS language=javascript>
<!--
function Button2_onclick() {//CPU 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Processor");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.Caption + "</td>");
document.write("<td>" + p.DeviceID + "</td>");
document.write("<td>" + p.Name + "</td>");
document.write("<td>" + p.CpuStatus + "</td>");
document.write("<td>" + p.Availability + "</td>");
document.write("<td>" + p.Level + "</td>");
document.write("<td>" + p.ProcessorID + "</td>");
document.write("<td>" + p.SystemName + "</td>");
document.write("<td>" + p.ProcessorType + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button1_onclick() {//軟盤信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_FloppyDrive");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.Description + "</td>");
document.write("<td>" + p.DeviceID + "</td>");
document.write("<td>" + p.Status + "</td>");
document.write("<td>" + p.Manufacuturer + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button1_onclick() {//CD-ROM 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_CDROMDrive");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.Caption + "</td>");
document.write("<td>" + p.Description + "</td>");
document.write("<td>" + p.Drive + "</td>");
document.write("<td>" + p.Status + "</td>");
document.write("<td>" + p.MediaLoaded + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button1_onclick() {//鍵盤信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Keyboard");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.Description + "</td>");
document.write("<td>" + p.Name + "</td>");
document.write("<td>" + p.Status + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button1_onclick() {//主板信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_BaseBoard");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{
var p = e.item ();
document.write("<tr>");
document.write("<td>" + p.HostingBoard + "</td>");
document.write("<td>" + p.Manufacturer + "</td>");
document.write("<td>" + p.PoweredOn + "</td>");
document.write("<td>" + p.Proct + "</td>");
document.write("<td>" + p.SerialNumber + "</td>");
document.write("<td>" + p.Version + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
//-->
</script>
</head>
<body>
<INPUT id="Button1" type="button" value="Button"
name="Button1" language=javascript onclick="return Button1_onclick()">
</body>
</html>
使用javascript方式獲得客戶端的信息主要的優點是,不需求伺服器資源.不需求刷新網頁.直接在客戶端執行腳本獲得顯示.
在這上找到了硬碟序列號的參數:
\'獲得硬碟序列號
Dim cmicWmi As New System.Management.ManagementObjectSearcher(\"SELECT * FROM Win32_DiskDrive\")
Dim Uint32 As UInt32
For Each cmicWmiObj As ManagementObject In cmicWmi.Get
Uint32 = cmicWmiObj(\"signature\")
Next
TextBox1.Text = Uint32.ToString
和在一塊總算給提出來了,呵呵。
8、Java如何取得計算機硬體信息么
可以的
IMonitorService介面:9、java如何獲取Linux操作系統下的硬體信息
引入包:
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Map;
import java.util.Properties;
import org.hyperic.sigar.CpuInfo;
import org.hyperic.sigar.CpuPerc;
import org.hyperic.sigar.FileSystem;
import org.hyperic.sigar.FileSystemUsage;
import org.hyperic.sigar.Mem;
import org.hyperic.sigar.NetFlags;
import org.hyperic.sigar.NetInterfaceConfig;
import org.hyperic.sigar.NetInterfaceStat;
import org.hyperic.sigar.OperatingSystem;
import org.hyperic.sigar.Sigar;
import org.hyperic.sigar.SigarException;
import org.hyperic.sigar.Swap;
import org.hyperic.sigar.Who;
代碼太長 了,不給貼出來。相關的代碼太多了,github一抓一大把。
10、用JAVA代碼如何獲取主板編碼,機器配置信息等?
JAVA System類中的 getProperty(String key)方法
鍵 相關鍵值描述
其中key值為
java.version Java 運行時環境版本
java.vendor Java 運行時環境供應商
java.vendor.url Java 供應商的 URL
java.home Java 安裝目錄
java.vm.specification.version Java 虛擬機規范版本
java.vm.specification.vendor Java 虛擬機規范供應商
java.vm.specification.name Java 虛擬機規范名稱
java.vm.version Java 虛擬機實現版本
java.vm.vendor Java 虛擬機實現供應商
java.vm.name Java 虛擬機實現名稱
java.specification.version Java 運行時環境規范版本
java.specification.vendor Java 運行時環境規范供應商
java.specification.name Java 運行時環境規范名稱
java.class.version Java 類格式版本號
java.class.path Java 類路徑
java.library.path 載入庫時搜索的路徑列表
java.io.tmpdir 默認的臨時文件路徑
java.compiler 要使用的 JIT 編譯器的名稱
java.ext.dirs 一個或多個擴展目錄的路徑
os.name 操作系統的名稱
os.arch 操作系統的架構
os.version 操作系統的版本
file.separator 文件分隔符(在 UNIX 系統中是「/」)
path.separator 路徑分隔符(在 UNIX 系統中是「:」)
line.separator 行分隔符(在 UNIX 系統中是「/n」)
user.name 用戶的賬戶名稱
user.home 用戶的主目錄
user.dir 用戶的當前工作目錄