Cześć,
za zadanie mam napisać program, który skleja odpowiadające sobie wiersze 2 plików i zapisuje je w trzecim.
Po wykonaniu programu, w pliku "c.txt", można odnaleźć wyrazy, jednak wypisane są też tam niezrozumiałe ciągi znaków, lokalizacje kompilatora na dysku etc.
zawartość pliku a:
jeden dwa trzy
cztery piec szesc
zawartość pliku b:
1 2 3
4 5 6
Plik c powien wyglądać tak:
jeden dwa trzy 1 2 3
cztery piec szesc 4 5 6
Kod programu:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream odczyt_1("a.txt");
ifstream odczyt_2("b.txt");
ofstream zapis("c.txt" ,ios_base::out | ios_base::app);
char ch;
string miejsce , miejsce_2;
while (!odczyt_1.eof())
{
odczyt_1.get(ch);
miejsce += ch;
}
while (!odczyt_2.eof())
{
odczyt_2.get(ch);
miejsce_2 += ch;
}
int i = 0, k = 0;
int w1 = miejsce.length(), w2=miejsce_2.length();
while( i < w1 && k < w2)
{
while(miejsce[i] != '\n')
{
zapis<<miejsce[i];
i++;
}
i++;
zapis<<' ';
while(miejsce_2[k] != '\n')
{
zapis<<miejsce_2[k];
k++;
}
k++;
zapis<<' ';
zapis<<'\n';
}
return 0;
}