Problem beim laden einer Datei
-
Beinhaltet der aus dem File gelesene Name irgendwelche Directories.
Es gibt des öfteren probleme mit ''\'' diese müessen normalerweise escaped werden, d.h es muß durch eine voranstellen eines ''\'' definiert werden das das ''\'' keine Einleitung eines Sonderzeichens sondern das ASCII-Zeichen 0x5c ist.
Die Schreibweise ist dann "test\\test1"
würde man "test\test1" schreiben wäre der Output 'test est1' denn das \t würde als tab interpretiert
-
PAD schrieb:
Beinhaltet der aus dem File gelesene Name irgendwelche Directories.
Es gibt des öfteren probleme mit ''\'' diese müessen normalerweise escaped werden, d.h es muß durch eine voranstellen eines ''\'' definiert werden das das ''\'' keine Einleitung eines Sonderzeichens sondern das ASCII-Zeichen 0x5c ist.
Die Schreibweise ist dann "test\\test1"
würde man "test\test1" schreiben wäre der Output 'test est1' denn das \t würde als tab interpretiert
Wenn der Dateiname aus der Datei gelesen wird, dann sind es doch schon Backslashes, die nicht mehr escaped werden müssen! Du musst sie nur escapen wenn du es im Quellcode in einen String schreibst:
string Dateiname = "c:\\temp\\MeineDatei.txt";
EDIT:Hat mal jemand ein schöneres Wort als escapen das ist ja grausam...
-
Nein es kein path in der Datei für den Namen einfach nur der Name der Datei.
z.B.: MeineDatei
Ohne Endung und irgendwas es steht auch nur der eine Name drinn .MFG
Alex
-
Wenn Du den Dateinamen ausgelesen hast, wird die Datei dann erfolgreich geöffnet ?
-
Der name den er aus der Datei ausliesst ist richtig !
laden() benutzt ihn auch:BArchive << Bname; // Bei BArchive >> Bname wird nichts ausgelesen !
1.beim << liest er ohne probleme bei laden()
2.bei >> gibt er eine Fehlermeldung raus beim laden ,denn Datei ist ohne Inhalt ! (absturz)Bei 1. aber liesst er problemlos aus ! aber beim inhalt zeigen Aktuell wird nichts anezeigt ! Also das ganze Archive ist leer...
Sorry kann mich aber nicht besser Ausdrücken !
MFG
Und schon mal Danke
-
Das war keine Frage auf die Antwort.
ifstream file("Datei");
if(!file)
cout<<"Ging nicht auf";Wenn Du natürlich meinst das alles richtig ist....
-
Gib doch mal den Filename in einer Messagebox aus, oder
setze einen Breakpoint schau dir die Werte im Debugger an.Man nennt das auch das kleine 1*1 des Debuggens, schauen was wirklich ist und nicht denken was sein sollte
-
Ihr geht da alle falsch ran!
Dateien lädt man mit STREAM und CIN !!! jedoch habe ich gehört das kann nicht jedes C++
-
Spieleprogramierer schrieb:
Dateien lädt man mit STREAM und CIN !!! jedoch habe ich gehört das kann nicht jedes C++
Ähm what?
1. Ist das kein Grund rumzuschreien (Upper-case = schreien)
2. cin um dateien zu laden? dünkt mich doch etwas gar daneben
3. was hast du gegen fstream? ist ne nette STL-Klasse
4. Was soll nicht "jedes C++" können?
5. Erkläre den Term "jedes C++". Gibts denn mehrere C++er?-junix
-
Aah mal wieder mein Freund junix. war ja nur eine Frage der zeit bis Du dich wieder meldest und an allem was auszusetzen hast. aber ich verzeih dir!
nicht jedes C++ kann Straems und "cin". das Visual C++ kann es z.B. nicht gut wegen eines Fehlers in der Visual C++ Sprache. ebenso wie der "rand" Fehler. nun gut, Microsoft hat dann die WinAPI und MFC rausgebracht. diese Spracherweiterungen führen ja neue Befehle in die Visual C++ Sprache ein so daß die alten Fehler beseitigen werden.
Und jawóhl den "cin" Befehl nutzt man um Dateien zu laden. denn er Liest Daten. vor allem große Projekte brauchen viele Daten und müssen sie ja auch irgdnwie lesen oder etwa nicht??? woher sollen die Daten sonst kommen? Die können ja wohl nur aus einem "cin" kommen und das ist der Beweis!Hier sieht man wiedermal warum Visual C++ schlechter als C++ ist! denn visual C++ führt zwar viele optimirungen durch jedoch wird das programm dadurch instabieler. Für große Porjekte ist Visual C++ daher nicht geignet. ich empfehle da C++ denn es ist zwar langsamer aber stürzt nicht so oft ab!
-
Hatten wir die Diskusion nicht schon mal ?
http://www.c-plusplus.net/forum/viewtopic.php?t=30839&highlight=merkbefreiung
Da findest Du den Link zum Thema Visual C++ als eigene sprache.
Zum Thema cin liest Dateien: Schau mal in die C++ FAQ Stichwort Dateien & Stöhme
Ansonsten hilft es niemanden.
@Al3x
Hast Du mal geschaut ob die Datei geöffnet werden kann ?
Wenn das nicht geht, Dir mal angeschaut was wirklich als Dateiname angegeben wird ?
-
Visual C++ ist ein Kompiler von Microsoft!
(Oder bin ich falsch informiert???)
-
Ich kanns nur nochmal wiederholen: Der da unter "Spieleprogrammierer" postet, ist ein Troll, oder nennts meinetwegen Faker, jedenfalls isses nicht der, dem ich die Merkbefreiung ausgestellt habe. Ich rate, ihn zu ignorieren.
-
Ja es ist der Name habe es mit deinem code Probiert und er gibt ihn Korrekt weiter den Namen bis laden();
er lädt auch die Datei aber beim erstellen der verketteten Liste (Archive << newElement -> .... ) schreibt er nichts rein ! Also wir die Datei zwar geöffnet aber die Daten nicht genommen ....
Sorry Jungs bin Anfänger ! Und übe eigentlich nur mit dem Programm ....
Ich weiss Ihr würdet einiges anderst machen ..... aber jeder fängt mal an ...Hier handelt es sich aber meiner Meinung nach nicht um ein logisches problem ....
Al3x
-
scheisse
aber trotzdem danke an die cracks mit ihrem wissen und stolzzz !
MFG