Seite 1 von 1

Bug oder Denkfehler?

Verfasst: 10.06.2009 21:10
von Sunny
Ich hab hier mal nen kleinen Code, der sagt zwar erstmal nicht wirklich viel aus aber irgendwie macht er nicht das, was er machen soll.

Code: Alles auswählen

OpenFile(0,"C:\text.txt")

  TruncateFile(0)
  
  For x=0 To 10
    WriteString(0,"x")
  Next
  
  wert$=ReadString(0)
  
CloseFile(0)

MessageRequester("",wert$)

End
1. (OpenFile) -Datei wird geöffnet
2. (TruncateFile) -Daten der Datei werden gelöscht
3. (For / WriteString / Next) -es wird 10 mal "x" in die Datei geschrieben
4. (ReadString) -Der String "wert$" erhält den Inhalt der Datei
5. (CloseFile) -Die Datei wird geschlossen
6. (MessageRequester) -Der String "wert$" wird angezeigt
7. (END) -Das Programm wird beendet

Demnach müsste der Messagerequester doch eigentlich "xxxxxxxxxx" ausgeben, tut er aber nicht. Er öffnet sich zwar aber es steht nichts drin.
Hab ich da jetzt nen Denkfehler oder haut da was beim Compilieren nicht hin?

Verfasst: 10.06.2009 21:18
von STARGÅTE
wenn du eine Datei öffnest und dnan den Inhalt löschst nutze gleich:
CreateFile()

Ja es wird 10 mal ein "x" reingeschrieben, aber dann ist die Lese/Schreib Position bei 10 und nach 10 kommt nix mehr, also ist die ausgabe richtig!

Um wirder zu 0 zu kommen nutze FileSeek(Datei, Position)

Verfasst: 10.06.2009 21:18
von KeyKon
Wenn du einfach ReadString() schreibst liest er am Ende der Datei, also nach den 10 x, wenn da nix steht gibt er auch nix aus, du musst ein FileSeek(0,0) vorher einbauen um wieder an den Anfang der Datei zu springen...

EDIT: Arg 2 sek -.-

Verfasst: 10.06.2009 21:18
von ts-soft
Du liest ja da wo nichts mehr ist :mrgreen:

Verfasst: 10.06.2009 21:27
von Sunny
achso, stimmt ja...
also war's doch der denkfehler.
wenn ich euch nicht hätte würde ich dumm sterben.
danke für die schnellen antworten.

Verfasst: 10.06.2009 21:28
von KeyKon
Ich finds nur Lustig das nach genau 8 Minuten drei Antworten innerhalb von 13 sek. kommen :mrgreen:

Verfasst: 11.06.2009 17:03
von Andesdaf
KeyKon hat geschrieben:Ich finds nur Lustig das nach genau 8 Minuten drei Antworten innerhalb von 13 sek. kommen :mrgreen:
Hier findet's noch einer lustig :wink:

Verfasst: 11.06.2009 17:31
von Little John
Andesdaf hat geschrieben:
KeyKon hat geschrieben:Ich finds nur Lustig das nach genau 8 Minuten drei Antworten innerhalb von 13 sek. kommen :mrgreen:
Hier findet's noch einer lustig :wink:
Siméon Denis Poisson lässt grüßen. ;-)