-
-
Save madan712/4509039 to your computer and use it in GitHub Desktop.
import java.io.BufferedReader; | |
import java.io.InputStreamReader; | |
public class PingIP { | |
public static 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(); | |
} | |
} | |
public static void main(String[] args) { | |
String ip = "google.com"; | |
runSystemCommand("ping " + ip); | |
} | |
} |
thanks dude
Thanks
Thanks.
Thank you very much.
how can we ping ipv4 addresses and ipv6 addresses ?? if you can help me it would be really appreciated.
thank you
can you please explain what does that object p of Process class does.. I really cant get that part
@shivanshm4 the p Object is the process, and contain the console response of the command execution, readable with the next lines of the code
I do not uneerstand the logic of the syntax can some one please explain for me on my private email. My email address is:
([email protected])
nice job dude...#madan712....just remove public while declaring class....it gives error...rest whole code is awesome
Cool and great useful
The ping -c parameter is required on some systems
Hey nice one
I would do it in a different way:
public static void isReachable(String address) {
try {
InetAddress inetAddress = InetAddress.getByName(address);
boolean isReachable = inetAddress.isReachable(5000);
System.out.printf("Is the address [%s] reachable? -%s\n", address, isReachable ? "Yes" : "No");
} catch (Exception e) {
e.printStackTrace();
}
}
Hello, awesome code!
Though i tried to expand the usage a lite and made it possible to set the number of pings and size on the package sent. But with only an input stream there is no way to cancel the ping (Ctrl+C) if you want it to stop?
The problem is when i implemented the option to have a continues ping that will run until you tell it not to. And that ping will continue even after you close the java application.
Do you know if there is a way to send a stop command the ping process and then read the result from that ping?
what is the main usage of ping in java
anyone is available are not......answer sollunga da
Awesome!
I struggled alot with NetworkInterfaces but couldn't help.
Thanks so much, it works fine.
thanks !
Hi JavaExpert, I am new member in this group. I would like to add bulk ping, which will take from file and generate output in CSV format if 3 consecutive ping successful. I am sure you guys will help me in writing program. Appreciate your help
@EAndresen You can try p.destroy(); to stop ping.
how to use that code in java jframe?
how to use that code in java jframe?
Exact same method, you'd just need to handle an event that triggers it and obviously the response. Let me know if you need more info!
This works fine on Mac OS, however is there an additional command that needs to be called for Windows systems? Seems to fail on Windows.
I would do it in a different way:
public static void isReachable(String address) { try { InetAddress inetAddress = InetAddress.getByName(address); boolean isReachable = inetAddress.isReachable(5000); System.out.printf("Is the address [%s] reachable? -%s\n", address, isReachable ? "Yes" : "No"); } catch (Exception e) { e.printStackTrace(); } }
This is ICMP way. Unfortunately, it is not always available.
This was exactly what i needed thanks so much