从文件读取,在新文件中输出,并比较输出

我的代码需要一点帮助。代码的第一部分很容易创建。从两个文本文件中读取->在新文本文件中输出。 我的下一步是逐行比较两个输出。

  • 如果数字相同,则数字保持不变。
  • 如果该数字与textfile2的数字不同, 被替换的数字。

示例:

Textfile1:
2221112221
1122221112
2222221111
1111111111

Textfile2:
2222221111
2211222212
1111111111
2221112222

Result that should happen on Textfile3:
(like I'm overlapping textfile2 on textfile1)

2222221111
2211222212
1111111111
2221112222

因此,我已经研究了str.compare,但是无法如上所述输出结果。我不知道这是否适用。

if((line2.compare(0,line2.length(),line1)) == 0)
string line1,line2;
ifstream read1,read2;

read1.open("test.txt",ios::in);
read2.open("test2.txt",ios::in);
ofstream outFile("outputfile.txt",ios::out | ios::app);


if(!read1 || !read2){
    cerr << "One file is missing" << endl;
    exit(1);

}

else {
    while(getline(read1,line1))
    {
        outFile << line1;

    }
    while(getline(read2,line2))
    {
        outFile << line2 << endl;
    }

非常感谢大家!

lanybo 回答:从文件读取,在新文件中输出,并比较输出

重复字符串并比较字符与字符?这将使您实现所需的功能。

此示例显然没有异常处理(例如,不同的字符串长度):

std::string corn = "I eat Corn!";
std::string rice = "I eat Rice!";

int main()
{
    for (size_t i = 0; i < corn.length(); i++)
    {
        if (corn[i] != rice[i])
        {
            rice[i] = corn[i];
        }
    }
    std::cout << rice;
}
本文链接:https://www.f2er.com/3131912.html

大家都在问