in text suchen und block herausschreiben
-
hallo,
will in einer txt-datei ein markebeginn suchen und den block darunter bis zu einem markeende in eine neue datei speichern. mein code sieht so aus....passt aber glaube ich noch nicht. kann mir bitte einer helfen...danke
#include<iostream> #include<fstream> #include<string> using namespace std; int main() { char suche[20]; ifstream file("datei.txt"); ofstream outfile; outfile.open("neuedatei.dat"); while(!file.eof()){ std::string buffer; getline(file,buffer); if(suche=="markebeginn") outfile >>; if(suche=="markeende") continue; } file.close(); outfile.close(); // return 0; }will irgendwie nicht wie ich will

ich komm nicht einmal zum kompilieren
/edit pumuckl: [cpp]-tags. Nächstemal bitte selber machen!
-
Wie wär's mit der Fehlermeldung und Code-Tags?
-
Bitte lies dir mal den mit wichtig gekennzeichneten Thread "Du brauchst Hilfe?" hier im Forum durch und stell danach eine ordentliche Frage. Mit "Will nicht wie ich will" kann dir keiner helfen.
-
rasidrasid schrieb:
ich komm nicht einmal zum kompilieren

oooch du armer, das tuuuuut mir aber leid. und jetzt suchst du nen idioten, der dir deinen scheiss tippt?
-
rasidrasid schrieb:
hallo,
will in einer txt-datei ein markebeginn suchen und den block darunter bis zu einem markeende in eine neue datei speichern. mein code sieht so aus....passt aber glaube ich noch nicht. kann mir bitte einer helfen...danke
#include<iostream>
#include<fstream>
#include<string>
using namespace std;int main()
{
char suche[20];
ifstream file("datei.txt");
ofstream outfile;
outfile.open("neuedatei.dat");
while(!file.eof()){
std::string buffer;
getline(file,buffer);
if(suche=="markebeginn")
outfile >>;
if(suche=="markeende")
continue;}
file.close();
outfile.close();
// return 0;
}will irgendwie nicht wie ich will

ich komm nicht einmal zum kompilieren
Das kompiliert nicht, weil du geschrieben hast:
outfile >>;Das geht nicht.
Außerdem funktioniert dein Code von der Logik her nicht.
#include <string> #include <iostream> #include <fstream> int main() { std::ifstream inFile("datei.txt"); std::ofstream outFile("datei_neu.txt"); if (!inFile.good() || !outFile.good()) { std::cerr << "Konnte Datei nicht oeffnen." << std::endl; return 1; } bool mark = false; std::string buf; while (!inFile.eof()) { std::getline(inFile, buf); if (buf == "markebeginn") { mark = true; continue; } else if (buf == "markeende") { mark = false; continue; } if (mark) { outFile << inFile << std::endl; } } inFile.close(); outFile.close(); }Ungetestet.
-
asdasdasdasd ich danke dir, werde es so probieren.
an alle anderen.....ich dachte ist ein forum wo man hilfe bekommt und kein "scheiss".
[...]/edit pumuckl: Beleidigungen rauseditiert. Reiß dich bitte zusammen, das nächstemal werden solche Posts kommentarlos gelöscht.
-
rasidrasid schrieb:
an alle anderen.....ich dachte ist ein forum wo man hilfe bekommt und kein "scheiss".
[...]Wie schon oben geschrieben, lies dir bitte den entsprechenden Thread durch. Hier im Forum gibts wie überall im Netz gewisse Verhaltensregeln. Dazu gehört, bei Fragen die nötigen Informationen selber zu geben und sie nicht von den Helfern erst suchen zu lassen. Dazu gehört auch eine gewisse Höflichkeit, Beleidigungen und Pöbeleien wie sie vielleicht anderswo im netz zu finden sind haben hier nichts verloren.
-
hallo pumuckl,
ich hoffe in den treadregeln steht auch das man nichts unterstellen sollte. würde das forum ungerecht und unehrlich machen. hatte nie die absicht jemanden als idiot darzustellen. asdasdasdasd hat mir geholfen.....ist dieser jemand nun ein idiot?
-
rasidrasid schrieb:
ich hoffe in den treadregeln steht auch das man nichts unterstellen sollte. würde das forum ungerecht und unehrlich machen. hatte nie die absicht jemanden als idiot darzustellen. asdasdasdasd hat mir geholfen.....ist dieser jemand nun ein idiot?
Die Beleidigungen bezogen sich nicht auf asdasdasdasd sondern auf "alle anderen". Halte dich einfach an die Netiquette dann gibts keine Probleme und die Leute haben dann auch mehr Spaß dran dir zu helfen.