import java.io.*;public class errout { public static void main(String[] args) { Process listmgr; DataInputStream addResult; int BUFFER_SIZE = 1000; int byteCount = -1; String s = new String("cmd dir"); // for (int i = 0; i < args.length; i++) // s = s + " " + args[i]; try{ listmgr = Runtime.getRuntime().exec(s); addResult = new DataInputStream( new BufferedInputStream(listmgr.getInputStream())); byte[] resultBuf = new byte[BUFFER_SIZE]; byteCount = addResult.read(resultBuf); if (byteCount != -1) { String result = new String(resultBuf).trim(); System.out.print(result); } else System.out.println("No Data"); } catch(IOException e){e.printStackTrace();} } }
楼主我也是在搞哪个问题
没搞出老师说还要很多东西
我很久没来增分了
老师用过web服务器
import java.io.*;public class errout {
public static void main(String[] args) {
Process listmgr;
DataInputStream addResult;
int BUFFER_SIZE = 1000;
int byteCount = -1; String s = new String("cmd dir");
// for (int i = 0; i < args.length; i++)
// s = s + " " + args[i];
try{
listmgr = Runtime.getRuntime().exec(s);
addResult = new DataInputStream(
new BufferedInputStream(listmgr.getInputStream()));
byte[] resultBuf = new byte[BUFFER_SIZE];
byteCount = addResult.read(resultBuf);
if (byteCount != -1) {
String result = new String(resultBuf).trim();
System.out.print(result);
}
else
System.out.println("No Data");
}
catch(IOException e){e.printStackTrace();}
}
}
关键是起个线程
private void runRmiRegistry(int port) {
String str = System.getProperty("java.home") + "/bin/rmiregistry";
if (port == -1) port = 1099;
if (!(new PortChecker()).isPortFree("localhost", port, "TCP")) {
log.info("Port is not free " + port);
} else {
log.info("Starting rmi registry ...");
try {
cmd = Runtime.getRuntime().exec(str+ " "+port, null, null);
// Redirect output
output_ = new StreamRedirect(cmd.getInputStream());
// kick it off
output_.start();
log.info("Rmi registry started");
} catch (java.io.IOException exp) {
log.error("Can not start rmi registry", exp);
}
}
}public class StreamRedirect extends Thread {
InputStream is_;
private static Logger log = Logger.getLogger(StreamRedirect.class); public StreamRedirect(InputStream is) {
is_ = is;
} public void run() {
try {
InputStreamReader isr = new InputStreamReader(is_);
BufferedReader br = new BufferedReader(isr);
String line = null;
while ((line = br.readLine()) != null)
log.info(line);
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
不能在你的服务器端代码中启动他吗?