Leerzeilen aus txt entfernen
-
Hallo liebe Programmierergemeinde,
bitte helft mir mit meinem Code.Ich versuche aus einer Textdatei alle Leerzeilen zu entfernen und in OUT.txt neu abzuspeichern.
#include <fstream> int main() { std::ifstream INHDAT("IN.txt"); std::ofstream OUTDAT("OUT.txt"); std::string ZEILEN; for (std::size_t Z = 0; std::getline(INHDAT, ZEILEN); ++Z) if ( ZEILEN == "" ) {} else { int TEXNEU = TEXNEU + ZEILEN } // bin mir nicht ganz sicher wie ich das machen soll OUTDAT << TEXNEU << std::endl;Vielen Dank schonmal und freundliche Grüße.

-
In letzter Zeit scheint es gerade "in" zu sein, Jagd auf Leerzeichen zu machen...

Schau zum Beispiel mal hier.
-
Nexus schrieb:
In letzter Zeit scheint es gerade "in" zu sein, Jagd auf Leerzeichen zu machen...

Schau zum Beispiel mal hier.
Die sind wie Geister. Die sind eigentlich gar nicht da,aber machen dir trotzdem Probleme.

-
Leerzeilen entfernen geht z.B. so:
#include <algorithm> // remove_copy_if #include <iostream> #include <fstream> #include <iterator> // istreambuf_iterator struct EmptyLineRemover { EmptyLineRemover() : m_prev(0) {} bool operator()( char c ) { const char LF = '\n'; if( m_prev == LF && c == LF ) return true; // true: remove m_prev = c; return false; } private: char m_prev; // Vorgängerzeichen }; int main() { using namespace std; ifstream inhdat("IN.txt"); ofstream outdat("OUT.txt"); remove_copy_if( istreambuf_iterator< char >( inhdat ), istreambuf_iterator< char >(), ostreambuf_iterator< char >( outdat ), EmptyLineRemover() ); return 0; }wozu braucht man den sowas?
Gruß
Werner
-
Vielen Dank
Grüße waldgnarf
-
Huh, da hatte ich wohl zu schnell gelesen... Sorry.
