http://www.360doc.com/content/12/1012/15/10825198_241057806.shtml
1、DiskUtils 获取硬盘编号
- import java.io.File;
- import java.io.FileWriter;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
-
- class DiskUtils {
- private DiskUtils() {
- }
-
- public static String getSerialNumber(String drive) {
- String result = "";
- try {
- File file = File.createTempFile("damn", ".vbs");
- file.deleteOnExit();
- FileWriter fw = new java.io.FileWriter(file);
- String vbs = "Set objFSO = CreateObject(\"Scripting.FileSystemObject\")\n"
- + "Set colDrives = objFSO.Drives\n"
- + "Set objDrive = colDrives.item(\""
- + drive
- + "\")\n"
- + "Wscript.Echo objDrive.SerialNumber"; // see note
- fw.write(vbs);
- fw.close();
- Process p = Runtime.getRuntime().exec(
- "cscript //NoLogo " + file.getPath());
- BufferedReader input = new BufferedReader(new InputStreamReader(
- p.getInputStream()));
- String line;
- while ((line = input.readLine()) != null) {
- result += line;
-
- }
- input.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- return result.trim();
- }
- }
2、MacUtils 获取MAC地址
- import java.io.InputStreamReader;
- import java.io.LineNumberReader;
-
-
- public class MacUtils {
-
- public static void getMac(){
- try {
-
- Process process = Runtime.getRuntime().exec("ipconfig /all");
-
- InputStreamReader ir = new InputStreamReader(process.getInputStream());
-
- LineNumberReader input = new LineNumberReader(ir);
-
- String line;
-
- while ((line = input.readLine()) != null)
-
-
- if (line.indexOf("Physical Address") > 0) {
-
- String MACAddr = line.substring(line.indexOf("-") - 2);
-
- System.out.println("MAC address = [" + MACAddr + "]");
-
- }
-
- } catch (java.io.IOException e) {
-
- System.err.println("IOException " + e.getMessage());
-
- }
- }
- }
3、
测试程序:
- import java.io.InputStreamReader;
- import java.io.LineNumberReader;
- import java.net.NetworkInterface;
- import java.net.SocketException;
- import java.util.Enumeration;
- import java.util.Vector;
-
-
- public class TestMain {
-
-
- public static void main(String[] args) {
- // TODO Auto-generated method stub
-
- //
- System.out.println("***MAC地址***");
- MacUtils.getMac();
- //
- String sn = DiskUtils.getSerialNumber("C");
- System.out.println("***硬盘编号***");
- System.out.println(sn);
-
- }
-
- }
|