私は現在のディレクトリに存在するファイルをプリントアウトします。 コンソール上にないテキストファイルで出力します。 私のプログラムは: -stdoutの代わりにファイルに書き込む
int main()
{
system("ls");
return 0;
}
ありがとうございました!!!
私は現在のディレクトリに存在するファイルをプリントアウトします。 コンソール上にないテキストファイルで出力します。 私のプログラムは: -stdoutの代わりにファイルに書き込む
int main()
{
system("ls");
return 0;
}
ありがとうございました!!!
ちょうどシェルのリダイレクト機能を使用して、あなたはすでにsystem()
を使用している、これはすでにプラットフォームに依存しているので - ちょうどあなたの出力を交換、これはあなたがファイルに書き込む方法ですつまり、
system("ls > /home/you/thefile");
@RolandIllig、そうです! –
これはfopen()よりも簡単ですが、Cでファイルに書き込む方法の標準的な例ではありません。 – dwerner
あなたがファイルにしたいものと一緒に。 他の人に言及すると、それをファイルにパイプすることができます。
FILE *ofp;
char outputFilename[] = "out.txt";
ofp = fopen(outputFilename, "w");
if (ofp == NULL) {
fprintf(stderr, "Can't open output file %s!\n",
outputFilename);
exit(1);
}
fprintf(ofp, "ls");
fclose(ofp);
まあ一つの方法は、しばらくは「out.txtを」ファイルに書き込まれますリダイレクトした後、stdoutにファイル
にすべての出力を標準出力をリダイレクトするために別の関数がありますターミナルで './xyz> logfile.txt'を実行するだけです。 – noMAD