Abwechseln Werte aus Datei lesen
-
wenn du nur jede zweite zahl einlesen musst, liest du einfach alle nacheinander ein, verwendest aber nur jede zweite...
-
danke, werd mal sehn, wies sich in der Praxis macht und dann bescheit geben

Also im Moment bekomme ich solche und ähnliche Ausgaben in der Datei zu sehn:
( @ h ....und wenn ich sie wieder einlese sind alle Werte 0...
kann aber eigentlich nicht stimmen.
-
Also im Moment bekomme ich solche und ähnliche Ausgaben in der Datei zu sehn:
( @ h ....wie "sehen" ? hast du es mit nem text-editor geöffnet oder wie?
dann ist es auch kein wunder... deine integer werden dann jeweils in vier ein-byte-stücke gehaun und jeweils als vier buchstaben bzw. irgendwelche symbole interpretiert...
das ist ja auch nicht der sinn der sache. Diese daten sind ja nicht für einen leser, sondern für den rechner gedacht.
Um die werte wieder richtig darstellen zu können, musst du es mit einem eigenen programm genauso auslesen, wie du sie reingeschrieben hast.und wenn ich sie wieder einlese sind alle Werte 0...
kann aber eigentlich nicht stimmen.also, mein beispiel habe ich eigentlich getestet, hat bei mir auch sehr schön geklappt... so wie es sollte...

-
mim Editor war mir auch klar, dass ich nix schönes zu sehn bekomme, aber selbst wenn das Programm die Werte interpretiert bekomme ich für jeden Wert 0 geschickt->ich teste weiter...
-
moment mal... ich bin mir zu 95% sicher, dass mein codebeispiel funktioniert... poste doch einfach mal hierrein das, was du geschrieben hast, vielleicht fällt der fehler direkt auf...
-
ok:
for( int i = 0; i < Anzahl_der_Paare; i++) { TEST1.write((char*)(&iPos[i], sizeof(int)); TEST1.write((char*)(&iLen[i], sizeof(int)); } for( int i = 0; i < Anzahl_der_Paare; i++) { TEST1.read((char*)(&iPos[i], sizeof(int)); TEST1.read((char*)(&iLen[i], sizeof(int)); }Was is da falsch?
EDIT:
An dem ifstream TEST1("Test.xxx", ifstream::binary); liegts nicht, oder?
-
also wenn du mit einem input-file-stream versuchst irgendetwas zu schreiben, dann kann da ja wohl nichts gutes rauskommen...
-
nein nein, dass war nicht der Sinn der Frage->natürlich benutze ich zum Schreiben ofstream...
Ich wollte nur wissen, obs nen Unterschied macht, ob ich ios::binary schreibe, oder ifstream::binary/ofstream::binary schreibe
-
hm, wenn ich das wüsste... kP... mit ios::binary hats bisher immer ganz jut geklappt, was das andere heisst, musst ich wieder in der doku nachschauen...
-
habs probiert und hat nicht dran geändert...Bekomme immernoch beim Einlesen jedesmal 0 zugeliefert...
-
bau mal solche if() abfragen drumherum:
ifstream myInput("myFile.tst", ios::binary); if(!myInput){ //laut meckern, weil die datei nicht gefunden wurde }else{ //ansonsten weitermachen }
-
die sind bei mir immer dabei...
-
Na dann kann dir ja so keiner weiterhelfen.
Also wirf einfach mal den debugger an, und wenn du nich weiterkommst, dann lässt du einfach mal n blick in deinen code werfen, und postest hir die signifikantesten zeilen.
-
beim debuggen bkomme ich immer die Meldung: Fehler beim starten von cmd.exe
-
ähm... was für einen compiler hast du denn überhaupt? ich kenn mich da jetzt nicht mit jedem einzelnen aus, oder, um genauer zu sein, ich kenn mich mit den ganzen compilern überhaupt nicht aus...

-
dumm von mir...
Ich benutz seit kurzem nun VC++2005 Express Edition