\n in textfiles
-
ich hab in einer textdatei folgendes stehen
.
.
.
gb Guest Book \n gb Great Britain
.
.der code:
char bla[1000]
.
.
fgets(bla,100,dateio);
.
.
.
cout << bla << endl;
.
.
.das prob ist das kein zeilenumbruch kommt.
habs auch schon mit \\n '\n' "\n" versucht.
was muss ich also schreiben um einen zeilenumbruch zu erzeugen??thx
-
Hallo
unter Windows die Kombination der beiden Zeichen '\r' und '\n'
bis bald
akari
-
schade funzt auch nicht:
vllt liegts an meinem code:while(go == 1)
{
if(menue == 1)
{
found = 2;
cout << "What abb are you looking for?" << endl;
cin >> search;
size = strlen(search);
reader = fopen("c://abbs.txt","r");
while(feof(reader) == 0 && found == 2)
{
fgets(abb,1000,reader);if(strncmp(abb,search,size) == 0)
{
cout << abb << endl;
found = 1;cout <<"[1] Look for another abbrevation!"<< endl; //
cout <<"[2] Define an abbrevation!"<< endl; //
cout <<"[3] Show complete abb-list!"<< endl; // menue v2
cout <<"[4] Exit Abbiator!"<< endl; //
cin >> menue; //
}}
fclose(reader);oder mach ma bitte ein beispiel wie du die kombinierst
so oder?: \r\n
'\r\n' funzt auch nich..
-
Hallo
du darfst die beiden Zeichen ja auch nicht als Klartext in die Datei schreiben, sondenr als Steuerzeichen.. .eben als Enter.
bis bald
akari
-
Aber es muss in einer zeile stehen, sonst funzt die suchfunktion nicht mehr.
also kann man in c++ nicht erreichen dass eine zeile in txt-dateien als 2(also mit zeilenumbruch) gelesen wird???????
bei php könnt ich ja <br> schreiben, warum geht das nicht in c++?
-
Hallo
- du kannst dir für die 'zeileninternen Zeilen' zum Beispiel ein anderes Steuerzeichen definieren, mit dem du die 'zeileninternen Zeichenumbrüche' markierst.
- du liest die Zeilen weiterhin einzeln ein, und hängst zusammengehörende Zeilen wieder im Programm mit gewohnten Zeilenumbruch zusammen.
- du nimmst zum Trennen der echten Zeilen in der Datei ein anderes Steuerzeichen, und trennst die 'internen Zeilen' wieder mit dem gewohnten.
bis bald
akari
-
also erstmal akari danke für deine mühe,
aber weißt du, ich bin nich nocht son c++GURU, und bin jetzt nicht ganz klar gekommen mit dem was du gesagt hast.
könntest du(oder jemand der das checkt) bei gelegenheit vllt ein kleines beispielprog schreiben? thx!
-
std::ifstream f("abbs.txt", std::ios::in) std::string line; while (std::getline(line, f)) { std::size_type pos; while ((pos = line.find("\\n")) != std::string::npos) line.replace(pos, 2, "\n"); std::cout << line << std::endl; }