下面这个程序是获取本机cpu得信息得,我想把它转换成一个applet
但是我直接把main方法换成paint什么的,不好用,请大家给点建议,谢谢
import java.io.*; public class RegQuery { private static final String REGQUERY_UTIL = "reg query "; 
private static final String REGSTR_TOKEN = "REG_SZ"; 
private static final String REGDWORD_TOKEN = "REG_DWORD"; private static final String PERSONAL_FOLDER_CMD = REGQUERY_UTIL + 
"\"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders\" /v Personal"; 
private static final String CPU_SPEED_CMD = REGQUERY_UTIL + 
"\"HKLM\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0\" /v ~MHz"; 
private static final String CPU_NAME_CMD = REGQUERY_UTIL + 
"\"HKLM\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0\" /v ProcessorNameString"; public static String getCurrentUserPersonalFolderPath() 

try 

Process process = Runtime.getRuntime().exec(PERSONAL_FOLDER_CMD); 
StreamReader reader = new StreamReader(process.getInputStream());  reader.start(); 
process.waitFor(); 
reader.join();  String result = reader.getResult(); 
int p = result.indexOf(REGSTR_TOKEN);  if (p == -1) 
return null;  return result.substring(p + REGSTR_TOKEN.length()).trim(); 

catch (Exception e) 

return null; 

} public static String getCPUSpeed() 

try 

Process process = Runtime.getRuntime().exec(CPU_SPEED_CMD); 
StreamReader reader = new StreamReader(process.getInputStream());  reader.start(); 
process.waitFor(); 
reader.join();  String result = reader.getResult(); 
int p = result.indexOf(REGDWORD_TOKEN);  if (p == -1) 
return null; // CPU speed in Mhz (minus 1) in HEX notation, convert it to DEC 
String temp = result.substring(p + REGDWORD_TOKEN.length()).trim(); 
return Integer.toString((Integer.parseInt(temp.substring("0x".length()), 16) + 1)); 

catch (Exception e) 

return null; 

} public static String getCPUName()
 { 
try 

Process process = Runtime.getRuntime().exec(CPU_NAME_CMD); 
StreamReader reader = new StreamReader(process.getInputStream());  reader.start(); 
process.waitFor(); 
reader.join();  String result = reader.getResult(); 
int p = result.indexOf(REGSTR_TOKEN);  if (p == -1) 
return null;  return result.substring(p + REGSTR_TOKEN.length()).trim(); 

catch (Exception e)

return null; 

} static class StreamReader extends Thread

private InputStream is; 
private StringWriter sw;  StreamReader(InputStream is) 

this.is = is; 
sw = new StringWriter(); 
}  public void run() 

try 

int c; 
while ((c = is.read()) != -1) 
sw.write(c); 

catch (IOException e) { ; } 
}  String getResult() 

return sw.toString(); 

} public static void main(String s[]) 

System.out.println("Personal directory : " + getCurrentUserPersonalFolderPath()); 
System.out.println("CPU Name : " + getCPUName()); 
System.out.println("CPU Speed : " + getCPUSpeed() + " Mhz"); 

}

解决方案 »

  1.   

    汗, 你想你的applet出来是什么效果阿??
    只现实 3个字符串?
      

  2.   

    想把它放到网上,然后当别人访问我的网页时,把这个程序下到他本地,然后显示出来~~是不是只能把它转成applet然后用html调用code=****才能使用吗?还有其他方法吗?谢谢指教!
      

  3.   

    试了下,做个exe文件可以用哈```:)
      

  4.   

    就是弄成EXE后点一下就可以看到效果了撒```