[英]Writing executable program.exe to read and write files in but in this manner program.exe<input.txt>output.txt
首先,它不是作业问题。 我知道如何读写文件,如果我已经知道所涉及文件的名称,那么可以用C ++解析行,但是我需要为输入和输出的不同文件名运行相同的代码,并且它将被调用多次。 任何帮助将不胜感激 :)
#include <iostream>
#include <fstream>
#include <math.h>
#include <sstream>
#include <string>
using namespace std;
void file_reader(ifstream &file_read, ofstream &file_out){}
int main(){
ifstream file_read("temp.lmps",ios::in);
ofstream file_out("data.lmps",ios::out);
file_reader(file_read,file_out);
return 0;
}
选项1
更改
void file_reader(ifstream &file_read, ofstream &file_out){}
使用istream
和ostream
代替ifstream
和ofstream
。
然后,用std::cin
和std::cout
调用它。
void file_reader(std:istream& in_stream, std::ostream& out_stream){}
int main()
{
file_reader(std::cin, std::cout);
return 0;
}
现在您可以使用
program.exe < input.txt > output.txt
选项2
将输入文件和输出文件作为参数传递给程序。
int main(int argc, char** argv)
{
std::ifstream file_read(argv[1],ios::in);
std::ofstream file_out(argv[2],ios::out);
file_reader(file_read, file_out);
return 0;
}
现在您可以使用
program.exe input.txt output.txt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.