ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
1826
1826
EMPFEHLEN
-
23.08.07 18:53 #1
- Registriert seit
- Apr 2007
- Ort
- Wesel (NRW)
- Beiträge
- 217
Ich will mit CFile::Read aus einer Datei Daten auslesen und das ganze dann in einen CString speichern. Das macht schonmal Probleme und ich habe keine andere Lösung
gefunden auser alles aus einem char array zu speichern und dann in den CString zu kopieren. Dabei stürtzt mein Programm jetzt ab. Weiß jemand wie ich direkt in einen CString speichern kann oder was an meinem Cod falsch ist ?:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
CString MeinProgramm::DateiLaden(CString DateiName){ CFile InFile; try{ InFile.Open(DateiName,CFile::modeRead); } catch(...){ //Fehler } int Länge = InFile.GetLength(); char Buffer100[100]; char Buffer10[10]; char Buffer1[1]; CString Data; //Daten lesen [B]for(int i=0;i<=Länge;) { if(i+100<=Länge) { InFile.Read(Buffer100,100); int i; for(int b=i;b<=i+100;b++) { Data.Insert(b,Buffer100[i]); i++; } i=i+100; } if(i+10<=Länge) { InFile.Read(Buffer10,10); int i; for(int b=i;b<=i+10;b++) { Data.Insert(b,Buffer10[i]); i++; } i=i+10; } if(i+1<=Länge) { InFile.Read(Buffer1,1); int i; for(int b=i;b<=i+1;b++) { Data.Insert(b,Buffer1[i]); i++; } i=i+1; } }[/B] MessageBox(Data); return Data; }
Der Fehler tritt im Dick hinterlegten Teil des Codes aus.
-
Hallo,
dein Code schaut recht kompliziert aus, so dass ich auf die Fehlersuche verzichte und dir lieber eine etwas einfachere Variante vorschlagen möchte:
GrußCode cpp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
CString Data = _T(""); CFile InFile; if( InFile.Open(DateiName,CFile::modeRead) ) { char Buffer[4096]; int nRead; while( (nRead = InFile.Read(Buffer, sizeof(Buffer))) ) { Buffer[nRead] = 0; Data += Buffer; } InFile.Close(); }
MCoder"The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
--- Larry Wall
-
23.08.07 20:01 #3
- Registriert seit
- Apr 2007
- Ort
- Wesel (NRW)
- Beiträge
- 217
Ja danke klappt wunderbar

Hatte grad den Fehler gefunden. Hatte einer Varibalen keinen Wert zu gewiesen mit der Gerechnet werden sollte.
Aber deine Lösung ist um ein ganzes Stück kürzer und einfacher.
Danke Nochma
Mfg Anfänger
Ähnliche Themen
-
CString in CFile schreiben
Von Alex braucht Hilfe im Forum VisualStudio & MFCAntworten: 3Letzter Beitrag: 08.07.10, 09:03 -
CFile und CString
Von SCIPIO-AEMILIANUS im Forum VisualStudio & MFCAntworten: 1Letzter Beitrag: 28.09.07, 16:35 -
CFile Datei ändern
Von flo_hr im Forum VisualStudio & MFCAntworten: 3Letzter Beitrag: 27.10.06, 12:25 -
CFile read Line/write Line
Von the_duke_at im Forum VisualStudio & MFCAntworten: 0Letzter Beitrag: 24.07.04, 14:00 -
Binär lesen mit CFile
Von schwork im Forum VisualStudio & MFCAntworten: 4Letzter Beitrag: 05.05.04, 09:37





Zitieren
Login






