Write a program to append one file”1.txt” at the end of another “2.txt”.
答案:2 悬赏:0
解决时间 2021-02-26 23:14
- 提问者网友:野性
- 2021-02-26 14:05
用c编
最佳答案
- 二级知识专家网友:丢不掉的轻狂
- 2021-02-26 14:24
#include
#include
#include
using namespace std;
int openFiles (string inFile1, string inFile2, string outFile1);
void mergeFiles (string inFile1, string inFile2, string outFile1,ifstream& File1,ifstream& File2,ofstream& outFile);
int main()
{
string inFile1, inFile2, outFile1;
ifstream File1;
ifstream File2;
ofstream outFile;
cout <<"Enter input file 1:"<
cin >>inFile1;
cout <<"Enter input file 2:"<
cin >>inFile2;
cout <<"Enter output file 1:"<
cin >>outFile1;
openFiles (inFile1, inFile2, outFile1);
mergeFiles (inFile1, inFile2, outFile1, File1, File2, outFile);
return 0;
}
void mergeFiles (string inFile1, string inFile2, string outFile1,ifstream& File1,ifstream& File2,ofstream& outFile)
{
File1.open(inFile1.c_str());
File2.open(inFile2.c_str());
outFile.open(outFile1.c_str());
string File1_fName, File1_lName,exam1,examGrade1;
string File2_fName, File2_lName,exam2,examGrade2;
File1 >> File1_fName >> File1_lName>>exam1>>examGrade1;
File2 >> File2_fName >> File2_lName>>exam2>>examGrade2;
while (!File1.eof() && !File2.eof())
{
if ((File1_fName<=File2_fName ))
{
outFile << File1_fName << '\t'<< File1_lName << endl;
File1 >> File1_fName >> File1_lName>>exam1>>examGrade1;
}
else
{
outFile << File2_fName << '\t'<< File2_lName << endl;
File2 >> File2_fName >> File2_lName>>exam2>>examGrade2;
}
if (File1.eof() )
{
while (!File2.eof())
{
outFile << File2_fName << '\t'<< File2_lName << endl;
}
}
if (File2.eof() )
{
while (!File1.eof())
{
outFile << File1_fName << '\t'<< File1_lName << endl;
}
}
File1.close();
File2.close();
outFile.close();
}
}
int openFiles (string inFile1, string inFile2, string outFile1)
{
ofstream outFile;
outFile.open (outFile1.c_str());
if (outFile.fail())
{
cerr << "ERROR: cannot open " <
<< " for output." <
return EXIT_FAILURE;
}
ifstream File1;
File1.open (inFile1.c_str());
if (File1.fail())
{
cerr << "ERROR: cannot open " <
<< " for input." <
return EXIT_FAILURE;
}
ifstream File2;
File2.open (inFile2.c_str());
if (File2.fail())
{
cerr << "ERROR: cannot open " <
<< " for input." <
return EXIT_FAILURE;
}
}
#include
#include
using namespace std;
int openFiles (string inFile1, string inFile2, string outFile1);
void mergeFiles (string inFile1, string inFile2, string outFile1,ifstream& File1,ifstream& File2,ofstream& outFile);
int main()
{
string inFile1, inFile2, outFile1;
ifstream File1;
ifstream File2;
ofstream outFile;
cout <<"Enter input file 1:"<
cout <<"Enter input file 2:"<
cout <<"Enter output file 1:"<
openFiles (inFile1, inFile2, outFile1);
mergeFiles (inFile1, inFile2, outFile1, File1, File2, outFile);
return 0;
}
void mergeFiles (string inFile1, string inFile2, string outFile1,ifstream& File1,ifstream& File2,ofstream& outFile)
{
File1.open(inFile1.c_str());
File2.open(inFile2.c_str());
outFile.open(outFile1.c_str());
string File1_fName, File1_lName,exam1,examGrade1;
string File2_fName, File2_lName,exam2,examGrade2;
File1 >> File1_fName >> File1_lName>>exam1>>examGrade1;
File2 >> File2_fName >> File2_lName>>exam2>>examGrade2;
while (!File1.eof() && !File2.eof())
{
if ((File1_fName<=File2_fName ))
{
outFile << File1_fName << '\t'<< File1_lName << endl;
File1 >> File1_fName >> File1_lName>>exam1>>examGrade1;
}
else
{
outFile << File2_fName << '\t'<< File2_lName << endl;
File2 >> File2_fName >> File2_lName>>exam2>>examGrade2;
}
if (File1.eof() )
{
while (!File2.eof())
{
outFile << File2_fName << '\t'<< File2_lName << endl;
}
}
if (File2.eof() )
{
while (!File1.eof())
{
outFile << File1_fName << '\t'<< File1_lName << endl;
}
}
File1.close();
File2.close();
outFile.close();
}
}
int openFiles (string inFile1, string inFile2, string outFile1)
{
ofstream outFile;
outFile.open (outFile1.c_str());
if (outFile.fail())
{
cerr << "ERROR: cannot open " <
}
ifstream File1;
File1.open (inFile1.c_str());
if (File1.fail())
{
cerr << "ERROR: cannot open " <
}
ifstream File2;
File2.open (inFile2.c_str());
if (File2.fail())
{
cerr << "ERROR: cannot open " <
}
}
全部回答
- 1楼网友:duile
- 2021-02-26 15:45
是不是资源被删了?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |