system函数 如何输出到文件 C++

例如,我在代码中写了voidmain(){printf("你好");system("ping127.0.0.1");printf("再见");}如何将“你好”和“再见”打... 例如,我在代码中写了
void main(){
printf("你好");
system("ping 127.0.0.1");
printf("再见");
}
如何将“你好”和“再见”打到屏幕上,将ping的信息打到"ping.result"文件里?
展开
 我来答
Hui翙
推荐于2016-05-17 · TA获得超过1.2万个赞
知道小有建树答主
回答量:2350
采纳率:93%
帮助的人:151万
展开全部
可以利用重定向实现system函数输出到文件。
例如:

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintStream;

public class Test {
publicstaticvoid main(String[] args) {

PrintStream printStream = null;
PrintStream sysout = System.out;
PrintStream syserr = System.err;
try {
File file = new File("c:\\systemout.log");

if (!file.exists()) {
try {
file.createNewFile();
} catch (IOException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
}
printStream = new PrintStream(new FileOutputStream(new File(
"c:\\systemout.log"),true));

// set output to file instead of console
System.setOut(printStream);
System.setErr(printStream);
System.out.println("Before Redirect:System.out.println");
System.err.println("Before Redirect:System.err.println");
} catch (FileNotFoundException e) {
//TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (printStream !=null) {
printStream.close();
}
// Reset the output to console
System.setOut(sysout);
System.setErr(syserr);

System.out.println("After Redirect:System.out.println");
System.err.println("After Redirect:System.err.println");
}

}
}
匿名用户
推荐于2016-03-05
展开全部

最简单的方法就是利用重定向实现

system("ping 127.0.0.1 >xxxx");//xxxx为要写入的文件名,包括路径
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式