Ⅰ java 如何獲得磁碟名稱
swing下的包,javax.swing.filechooser.FileSystemView;可以獲取復:制
FileSystemView fileSys=FileSystemView.getFileSystemView(); //獲取當前系統文件類型
//獲取系統的所有盤符或系統卷類型
for(File f:File.listRoots()){
System.out.println(fileSys.getSystemDisplayName(f));//獲取系統卷標及名字
System.out.println(fileSys.getSystemTypeDescription(f));//獲取系統卷的類型
System.out.println(f.getTotalSpace());//獲取該卷大小(單位:位元組)
System.out.println(f.getFreeSpace());//獲取該卷可用大小(單位:位元組)
}
Ⅱ Java中如何獲得某個磁碟(根目錄)比如C盤
使用sigar,
private static void file() throws Exception {
Sigar sigar = new Sigar();
FileSystem fslist[] = sigar.getFileSystemList();
for (int i = 0; i < fslist.length; i++) {
System.out.println("分區的盤符名稱" + i);
FileSystem fs = fslist[i];
// 分區的盤符名稱
System.out.println("盤符名稱: " + fs.getDevName());
// 分區的盤符名稱
System.out.println("盤符路徑: " + fs.getDirName());
System.out.println("盤符標志: " + fs.getFlags());//
// 文件系統類型,比如 FAT32、NTFS
System.out.println("盤符類型: " + fs.getSysTypeName());
// 文件系統類型名,比如本地硬碟、光碟機、網路文件系統等
System.out.println("盤符類型名: " + fs.getTypeName());
// 文件系統類型
System.out.println("盤符文件系統類型: " + fs.getType());
switch (fs.getType()) {
case 0: // TYPE_UNKNOWN :未知
break;
case 1: // TYPE_NONE
break;
case 2: // TYPE_LOCAL_DISK : 本地硬碟
// 文件系統總大小
FileSystemUsage usage = null;
usage = sigar.getFileSystemUsage(fs.getDirName());
System.out.println(fs.getDevName() + "總大小: " + usage.getTotal() + "KB");
// 文件系統剩餘大小
System.out.println(fs.getDevName() + "剩餘大小: " + usage.getFree() + "KB");
// 文件系統可用大小
System.out.println(fs.getDevName() + "可用大小: " + usage.getAvail() + "KB");
// 文件系統已經使用量
System.out.println(fs.getDevName() + "已經使用量: " + usage.getUsed() + "KB");
double usePercent = usage.getUsePercent() * 100D;
// 文件系統資源的利用率
System.out.println(fs.getDevName() + "資源的利用率: " + usePercent + "%");
break;
case 3:// TYPE_NETWORK :網路
break;
case 4:// TYPE_RAM_DISK :快閃記憶體
break;
case 5:// TYPE_CDROM :光碟機
break;
case 6:// TYPE_SWAP :頁面交換
break;
}
}
return;
}
Ⅲ 利用java得到硬碟信息
import java.io.File;
/**
*
* jdk6.0下的磁碟使用情況例子
*/
public class Diskfree {
public static void main(String[] args) {
File[] roots = File.listRoots();//獲取磁碟分區列表
for (File file : roots) {
System.out.println(file.getPath()+"信息如下:");
System.out.println("空閑未使用 = " + file.getFreeSpace()/1024/1024/1024+"G");//空閑空間
System.out.println("已經使用 = " + file.getUsableSpace()/1024/1024/1024+"G");//可用空間
System.out.println("總容量 = " + file.getTotalSpace()/1024/1024/1024+"G");//總空間
System.out.println();
}
}
}
Ⅳ 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
和在一塊總算給提出來了,呵呵。
Ⅳ java怎麼寫一個程序讀取計算機的所有磁碟
File[] roots = File.listRoots();
for (int i =0; i < roots.length; i++) {
System.out.println(roots[i]);
}
放入main里執行就知道,獲取所有盤符。
查找文件時需要讀取該盤符的所有文件夾、文件。同時如果是文件夾遞歸讀取裡面的文件夾、文件,就是這個思路。
Ⅵ java 如何獲得磁碟的名稱
static File[] listRoots()
列出可用的文件系統根目錄。
Ⅶ 利用Java文件類File的方法,獲取磁碟文件的文件名、長度、大小等特性。
package com.texst;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class GetFileMessageOfDisk {
/**
* @param args
*/
public static void main(String[] args) {
file = new File("D:/");
getMessage(file);
}
private static void getMessage(File file){
File[] files = file.listFiles();
if(files==null){
files = new File[0];
}
for(int i=0;i<files.length;i++){
if(files[i].isDirectory()){
System.out.println(files[i].getPath());
getMessage(files[i]);
}else{
try {
int length = new FileInputStream(files[i]).available();
System.out.println(files[i].getName()+" 長度:"+length+" 大小:"+length/1024+"KB");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
Ⅷ java怎樣獲得某個目錄下所有文件的文件名
importjava.io.File;
importjava.util.ArrayList;
publicclassFileTest{
privatestaticArrayList<String>filelist=newArrayList<String>();
publicstaticvoidmain(String[]args)throwsException
{
StringfilePath="E://Struts2";
getFiles(filePath);
}
/*
*通過遞歸得到某一路徑下所有的目錄及其文件
*/
staticvoidgetFiles(StringfilePath)
{
Fileroot=newFile(filePath);
File[]files=root.listFiles();
for(Filefile:files)
{
if(file.isDirectory())
{
/*
*遞歸調用
*/
getFiles(file.getAbsolutePath());
filelist.add(file.getAbsolutePath());
System.out.println("顯示"+filePath+"下所有子目錄及其文件"+file.getAbsolutePath());
}else{
System.out.println("顯示"+filePath+"下所有子目錄"+file.getAbsolutePath());
}
}
}
}