Problem beim Laden einer Datei : Anfangerproblem!?

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

eddy762

Betreff: Problem beim Laden einer Datei : Anfangerproblem!?

BeitragDi, Feb 03, 2004 19:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe hier ein Problem: Rolling Eyes
Wenn ich das Programm starte, kommt beim lesen der Datei der Fehler:
"Memory Access violation"!
Und ich habe keine Ahnung, woran das liegen könnte. Question
(Programm ist der Anfang für einen Vokabel- und Grammatiktrainer Latein)
Ich habe schon mehr geschrieben, aber der Fehler ist schon am Anfang, also habe ich den Rest nicht mit rein getan.
Wenn es irgendwie daran liegen sollte, sagt mir das.!.
Arrow Code: [AUSKLAPPEN]

AppTitle "Vokabel- und Grammatiktrainer"
Graphics 800,200,0,2
Print "Vokabel- und Grammatiktrainer"
Print "Latein"
Print CurrentDate$()
Print "(C)2003 Benedikt von Seelstrang"
Print "Bitte warten..."
correct=LoadSound("Sounds\right.wav")
Print "Immer noch..."
wrong=LoadSound("Sounds\wrong.wav")
Print "Lädt...:"
vocab$="Vocab\Vocabl7"
Dim tvoc(1)
Dim thvoc(1)
tvoc(1)=ReadFile(vocab$+".vocn")
thvoc(1)=ReadFile(vocab$+".voc")
If thvoc(1)=0 Then RuntimeError ""
If tvoc(1)=0 Then RuntimeError ""
Print "Die Vokabeldatei wurde geladen"
Dim b(1)
Global a=ReadInt(tvoc(1))
b(1)=a
If b(1)>d Then d=b(1)
Dim voc$(a-1,8)
For J=0 To a-1
  voc$(J,0)=ReadString$(thvoc(1))      ; Wort Latein
          :hier kommt immer der Fehler 'Memory access violation'
  voc$(J,1)=ReadString$(thvoc(1))      ; Wort Deutsch
  voc$(J,2)=ReadString$(thvoc(1))      ; Wort Deutsch
  voc$(J,3)=ReadString$(thvoc(1))      ; Wort Deutsch
  voc$(J,4)=ReadString$(thvoc(1))      ; Wort Deutsch
  voc$(J,5)=ReadString$(thvoc(1))      ; Wort Deutsch
  voc$(J,6)=ReadString$(thvoc(1))      ; Zusatz
  voc$(J,7)=ReadString$(thvoc(1))      ; Wort Latein II
  voc$(J,8)=ReadString$(thvoc(1))      ; Kapitel
  Print "Die "+J+". Vokabel wurde geladen"
Next

Question Question Question Question Question Question Mad
Vorsicht, Gourmetica Insularis voraus!
Achtet auf die Tratschwellen!

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDi, Feb 03, 2004 20:14
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn aus einer datei gelesen werden soll muß diese auch geöfnet werden !
beispiel
Code: [AUSKLAPPEN]
Datei  = Readfile("datei.txt")
Wert$ = Readstring$(Datei)
Closefile (Datei)

die datei muß natürlich vorhanden sein
[BB2D | BB3D | BB+]

Markus2

BeitragDi, Feb 03, 2004 20:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Wird doch geöffnet oder ?
Naja , in ein Array würde ich nicht das Dateihandle merken .

Und vieleicht mal auf eof prüfen .

Und für voc$(J, 0 - 8 ) auch ne Schleife machen .
 

eddy762

BeitragDi, Feb 03, 2004 20:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Funktioniert auch nicht besser!
Vorsicht, Gourmetica Insularis voraus!
Achtet auf die Tratschwellen!
 

girgl

BeitragDi, Feb 03, 2004 21:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
tvoc(1)=ReadFile(vocab$+".vocn")
thvoc(1)=ReadFile(vocab$+".voc")
ähm,du öffnest hier 2 dateien nacheinander.Womöglich liesst du aus der falschen Datei.
Vielleicht solltest du erst die eine Datei öffnen und den Inhalt in nem Feld speichern und danach das nächst file öffnen

Holzchopf

Meisterpacker

BeitragDi, Feb 03, 2004 21:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Du liest Strings aus, diese haben Steuerzeichen (Damit beim Laden die richtigen Zeichen zum richtigen String kommen). Wahrscheinlich hast du aber die einzelnen Daten in der Datei zeilenweise abgespeichert, dann benutze ReadLine. Falls du ein eigenes Steuerzeichen gemacht hast, musst du die ganze Zeile einlesen und mit einer eigenen Routine zerlegen...

MfG
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Hubsi

BeitragDi, Feb 03, 2004 23:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 800,200,0,2

Du versuchst 0 Bit Farbtiefe einzustellen. Kann natürlich nicht funzen Wink Versuch mal 16 oder 32.
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Triton

BeitragMi, Feb 04, 2004 2:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, bei 0 wird die aktuelle (also Desktop)-Farbtiefe genommen.

Hubsi

BeitragMi, Feb 04, 2004 9:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Embarassed Sorry Embarassed
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

eddy762

BeitragDo, Feb 05, 2004 15:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Ihr schreibt und schreibt; aber eine Lösung gibt es anscheinend nicht!
Vielleicht liegt das ja irgendwie an meinem Computer!?

--------------------------------------------------------------------------------

Zitat:
ähm,du öffnest hier 2 dateien nacheinander.Womöglich liesst du aus der falschen Datei.


habe ich schon überlegt, stimmt aber nicht.
Vorsicht, Gourmetica Insularis voraus!
Achtet auf die Tratschwellen!

Markus2

BeitragFr, Feb 06, 2004 18:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstell die Datei (ähnliche) mit dem Computer
und dann kann er sie auch bestimmt lesen Wink
Zumindest siehst du dann evtl. was du falsch machst .
Kann doch nicht so schwer sein ...
 

girgl

BeitragFr, Feb 06, 2004 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
du weisst doch wie die datei heisst und was du in der datei speicherst,is doch dann ganz leicht

Code: [AUSKLAPPEN]
file=writefile("test.txt")
 writeline file,"Test"
closefile file

bla=readfile("test.txt")
 muh$=readstring(bla)
closefile bla

print muh$
 

eddy762

BeitragDo, Feb 12, 2004 12:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:

file=writefile("test.txt")
writeline file,"Test"
closefile file

bla=readfile("test.txt")
muh$=readstring(bla)
closefile bla


Oben wäre WriteLine file,"Test" und unten ReadString (bla), aber sonst eine gute Idee. Ich werds versuchen Confused

Oder ich schreibe das Programm neu Exclamation Question Exclamation Sad
Vorsicht, Gourmetica Insularis voraus!
Achtet auf die Tratschwellen!
 

Edlothiol

BeitragDo, Feb 12, 2004 13:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie hast du die Datei denn geschrieben? Write/ReadString benutzen keine Steuerzeichen, sondern schreiben erst einen Integer in die Datei, der die Länge des Strings angibt. Wenn du das jetzt in nem Texteditor geschrieben hast, dürften die Zahlen ziemlich hoch sein. Vielleicht gibt das den Fehler.
Hast dus schonmal gedebuggt? Wann kommt die Fehlermeldung, sofort beim ersten Mal oder erst bei späteren Durchläufen?

@deine Sig: Very Happy
 

eddy762

BeitragMi, Mai 12, 2004 18:38
Antworten mit Zitat
Benutzer-Profile anzeigen
beim ersten Mal, ich versuche es noch einmal anders zu programmieren.
Vorsicht, Gourmetica Insularis voraus!
Achtet auf die Tratschwellen!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group