Seite 1 von 1
Inhalt einer Datei in eine andere Datei kopieren
Verfasst: 12. Februar 2009 15:01
von Mr.Undercover
Hallo alle zusammen,
Ich möchte, dass der Inhalt einer Datei in eine andere Datei rüberkopiert wird...
//Einlesen der Datei und erstellen der Kopie
std::ifstream(directory1);
std::ofstream asd( "kopie.lst" )
Frage mich nun wie ich den inhalt von directory1 in asd bzw. kopie halt rüberkopiere...
Verfasst: 12. Februar 2009 15:14
von Mr.Undercover
habe mal was versucht bzw. gefunden aber kriege lauter fehlermeldungen....
std::ifstream rd("directory1");
std::ofstream wr( "kopie.lst" );
while ( !read.eof() )
{
std::string line;
std::getline(line, rd);
wr << line;
}
wr.close(); rd.close();
Verfasst: 12. Februar 2009 15:45
von Mr.Undercover
problem gelöst danke!
Verfasst: 12. Februar 2009 15:48
von RavenIV
so funktioniert es:
Code: Alles auswählen
#include <iostream>
#include <fstream>
...
...
void copyFile
{
ifstream inputFile;
inputFile.open (("origBild.jpg", ifstream::binary);
ofstream outputFile ("copyBild.jpg", ofstream::binary);
outputFile << inputFile.rdbuf();
}
Verfasst: 12. Februar 2009 16:14
von Mr.Undercover
Ich hätte aber eine andere Frage wie ist das wenn ich ab einen bestimmten Keyword anfängt zu kopieren...
dahabe ich folgendes zusammengeschrieben:
std::ifstream read(directory1);
std::ofstream write( "kopie.lst" );
while ( !read.eof() )
{
std::string line;
while (std::getline( read, line ) && line!="*Keyword*" );
std::string line;
std::getline(read, line);
write << line<<std::endl;
}
write.close();
read.close();
das funktioniert leider nicht so richtig
Verfasst: 12. Februar 2009 17:40
von androphinx
mhhh, der ansatz ist schon nicht schlecht, solltest allerdings etwas umordnen (übrigens gibts den Code-Block nicht umsonst, das macht es für andere auch einfacher

)
Code: Alles auswählen
std::ifstream read(directory1);
std::ofstream write( "kopie.lst" );
std::string line;
while (std::getline( read, line ) && line!="*Keyword*");
while ( !read.eof() )
{
std::getline(read, line);
write << line<<std::endl;
}
write.close();
read.close();
Dein Fehler lag daran, dass er zwar erstmal nach dem Keyword gesucht hat, und dann auch eine Zeile ausgelesen hat, aber dann, beginnt er die Schleife wieder von vorne und sucht wieder nach dem Keyword, was es ja wahrscheinlich nicht ein zweites Mal gibt...
Mfg androphinx
Verfasst: 12. Februar 2009 18:03
von Mr.Undercover
ja genau mein Fehler habe ich gerade auch bemerkt beim debuggen...
Dennoch vielen dank!
Ich hätte noch da zwei kleine Fragen... Wie kriege ich es hin, das er das Keyword oben noch stehen lässt...
also das der File mit
*Keyword* beginnt ? (er fängt bei +1 Zeilen an!)
das zweite wäre könnte ich noch ne Zeile über keyword einen eigenen automatisch generierten text mit einer Funktion übergeben ?
z.b.: author dieses quellcodes: xxx
und sowas ?
Verfasst: 12. Februar 2009 18:50
von androphinx
Mr.Undercover hat geschrieben:ja genau mein Fehler habe ich gerade auch bemerkt beim debuggen...
Dennoch vielen dank!
Das sind so die kleinen Logikfehler, wo man mal eine Weile Abstand braucht, um sie zu entdecken
Mr.Undercover hat geschrieben:
Ich hätte noch da zwei kleine Fragen... Wie kriege ich es hin, das er das Keyword oben noch stehen lässt...
Nummer 3 + 4 in diesem Thread
Mr.Undercover hat geschrieben:
also das der File mit
*Keyword* beginnt ? (er fängt bei +1 Zeilen an!)
Einfach das Keyword als erstes ausgeben (du kennst es ja

)
Mr.Undercover hat geschrieben:
das zweite wäre könnte ich noch ne Zeile über keyword einen eigenen automatisch generierten text mit einer Funktion übergeben ?
z.b.: author dieses quellcodes: xxx
und sowas ?
Einfach diesen netten Code ausgeben, bevor du mit dem Suchen nach dem Keyword und dem Kopieren des Dateiinhaltes beginnst
So ich habe dir gerne geholfen, aber: Wenn du demnächst mal wieder so ein Problem hast ist die erste Regel: Eigenes Gehirn einschalten!!! Sonst lässt du es dir immer von jemand anderem machen und lernst es nie und das will hier niemand erreichen.
Mfg androphinx
Verfasst: 13. Februar 2009 16:12
von Mr.Undercover
ich habe es schon hinbekommen DANKE!
