2012-03-14 95 views
-3

看平信息。当我用ping命令CMD,有很多线路,例如:如何使用C/C++/JAVA

Reply from 209.85.175.138: bytes=32 time=34ms TTL=53 

我想读的时间。如何读取它或将信息从ping写入文件?

+5

哪一个? C,C++还是Java?所有三个一次?或者只是其中的一个? – 2012-03-14 15:41:51

+0

任何一个都不错 – arbak 2012-03-14 15:48:54

回答

0

您可以使用>开关将输出发送到文件。

ping "www.google.com" > "results.txt" 
0

由于C和C++代码,最显而易见的方法是使用popen

FILE *pings = popen("ping www.google.com", "r"); 
FILE *results = fopen("results.txt", "w"); 
char buffer[256]; 

while (fgets(pings(buffer, sizeof(buffer), pings)) 
    fputs(buffer, results); 

注意popen不包括在标准C或C++,但POSIX的一部分,可用在大多数其他平台上(例如,Windows,尽管名称为_popen)。

+0

据我所知,'popen'执行命令。如果那是正确的,那么它应该是'popen(“ping \”www.google.com \“”,“r”);' – 2012-03-14 16:50:39

+0

@AshBurlaczenko:糟糕 - 是的,我离开了字符串“ping”。对不起'回合。请注意,尽管您并不需要引用“www.google.com”。如果您使用的网址包含空格,您可能需要引号,但我相信这会破坏有效网址的规则。 – 2012-03-14 16:54:15