datei auslesen
Übersicht

![]() |
mas93Betreff: datei auslesen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi Leute,
Ich bin gerade dabei von BB3d auf Bmax umzusteigen... bis her hat eigentlich alles ganz gut funktioniert, nur wollte ich jetzt gerade eine datei per readline auslesen,bekomme aber eine Fehlermeldung... Es kommt:"Unhandled Exception:Attempt to access field or method of Null object" und diese Zeile wir hervorgehoben: t.name$=ReadLine(file:TStream) hier der code: Code: [AUSKLAPPEN] Function LoadTeil() dir=ReadDir("Ausrüstung") If Not dir Then RuntimeError "Ausrüstungsverzeichnis nicht gefunden" Repeat tt$=NextFile(dir) If tt$<>"." And tt$<>".." And tt$<>"" Then file:TStream=ReadFile(tt$) Local t:teil t=New teil t.name$=ReadLine(file:TStream) t.typ=ReadInt(file:TStream) ListAddLast(TeilList,t) CloseFile(file:TStream) EndIf Until tt$="" End Function könnt ihr mir weiterhelfen? mfg mas93 |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Readdir liefert die keine ganzen pfade, sondern nur die Dateinamen. | ||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ohh, stimmt. Hab ich vergesse, danke ![]() Aber aus irgend einem Grund zeigt er mir beim auslesen der zweiten Zeile "49" an, obwohl eine 1 in der datei steht... hier der code: Code: [AUSKLAPPEN] Function LoadTeil() dir=ReadDir("Ausrüstung") If Not dir Then RuntimeError "Ausrüstungsverzeichnis nicht gefunden" Repeat tt$=NextFile(dir) If tt$<>"." And tt$<>".." And tt$<>"" Then file:TStream=ReadFile("Ausrüstung/"+tt$) DebugStop Local t:teil t=New teil t.name$=ReadLine(file:TStream) t.typ=ReadShort(file:TStream) ListAddLast(TeilList,t) CloseFile(file:TStream) EndIf Until tt$="" End Function |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mach nur mal ein
Code: [AUSKLAPPEN] Datei = readfile(blablub) repeat print readline(datei) until eof(datei) damit könntest du den Fehler erstmal eingrenzen. Wenn es hier richtig angezeigt wird, hast du beim Programmieren noch irgendwas anderes falsch gemacht |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
Willi die Rübe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hm könnte es vllt. zufällig damit zusammenhängen, dass 49 zufällig der ASCII Code von 1 ist? ![]() |
||
Ich habe keine Lösung, aber ich bewundere das Problem.
Tehadon Q6600, MSI Neo2-FR, 4GB Ram, nVidia 7800 GTX At the Farewell Party visit: MySpace | Homepage |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
wenn ichs so mach wird 1 ausgegeben...
[EDIT]Und warum gibt des mir nen ASCII code aus?? Wie kann ich das ändern[/EDIT] [EDIT2]Wenn ich CHR davor setze dann jammer er ja rum, unable to convert int to string oder sowas in der art...[/EDIT2] |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Willi die Rübe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hast du die 1 per Hand in die Textdatei reingeschrieben oder hast du die Datei mit BM erstellt, also mit WriteShort?
Denn ReadShort nimmt einfach die ersten 2 Byte von der aktuellen Dateiposition und macht daraus eine Zahl. Wenn allerdings nur 1 Byte vorhanden ist, in deinem Fall mit dem Wert 49, dann wird diese Zahl genommen. Und da ein Zeichen in der ASCII Kodierung nur ein Byte beansprucht kommt es eben zur Umwandlung. |
||
Ich habe keine Lösung, aber ich bewundere das Problem.
Tehadon Q6600, MSI Neo2-FR, 4GB Ram, nVidia 7800 GTX At the Farewell Party visit: MySpace | Homepage |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Was steht denn in der Datei? Poste den inhalt einfach mal hier. | ||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] basis_leicht
1 steht in der Datei, habs von Hand reingeschrieben... also mit welchem Befehl muss ich die datei auslesen, damit er mir auch ne 1 zurrückgibt? |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Strings als Strings auslesen, bzw. im falle eine einzelnen Zeile diese auslesen und daraus ein Interger machen...
Code: [AUSKLAPPEN] t.typ=Int(ReadLine(file:TStream))
|
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ahh, ok so macht man des miti bmax, vielen Dank! | ||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Genauso hättest du es auch mit einem normalen BB machen müssen ![]() |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group