用于ping IP地址的Java Applet

时间:2013-07-04 06:30:11

标签: java

我制作了这段代码,它给出了以下3个错误!我需要帮助来摆脱附加图像中存在的这些错误。由于我没有太多关于如何包含系统命令的信息,因此产生的3个错误不会消失。

import java.applet.*;
import java.awt.event.*;
import java.awt.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class EventListeners extends Applet 
implements ActionListener{
public void init(){
Button b = new Button("Ping");
b.addActionListener(this);
add(b);
}
public void actionPerformed(ActionEvent e){
runSystemCommand(String command)
{try {
Process p = Runtime.getRuntime().exec(command);
BufferedReader inputStream = new BufferedReader(
new InputStreamReader(p.getInputStream()));

String s = "";
// reading output stream of the command
while ((s = inputStream.readLine()) != null) {
System.out.println(s);
}}
catch (Exception e) {
e.printStackTrace();
}}

public static void main(String[] args) {

String ip = "google.com";
runSystemCommand("ping " + ip); 





}  
}
![Errors][1]

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试在方法中编写函数。这在Java中是非法的

runSystemCommand方法放在actionPerformed方法

旁边
public void actionPerformed(ActionEvent e) {
     // Call runSystemCommand(...);
}

public void runSystemCommand(String command) {
    try {
        Process p = Runtime.getRuntime().exec(command);
        BufferedReader inputStream = new BufferedReader(
                new InputStreamReader(p.getInputStream()));

        String s = "";
        // reading output stream of the command
        while ((s = inputStream.readLine()) != null) {
            System.out.println(s);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

一些警告......

Applet在严格的安全沙箱中运行。它不允许您运行系统命令。即便如此,您也可以在Linux或Mac机上运行而不是Windows。

如果您想从GUI程序开始,请从JFrame开始,更容易使用

我还建议您使用合适的IDE