Komplette Datei einlesen

  • Komplette Datei einlesen

    Hallo!

    Wie kann ich eine KOMPLETTE datei einlesen? Wenn ich den befehl

    GML-Quellcode

    1. file_text_read_string(fileid)
    verwende wird ja immer nur bis zum "Neue Zeile"-Zeichen gelesen! Ich möchte aber die KOMPLETTE datei 1:1 ins Spiel als String übernehmen! Geht das? Wenn ja, wie?

    Danke schonmal im Vorraus
    Firecool
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • Kleiner nachteil: Bei dateien, die größer als 1KB sind fängt das Prog an zu hängen!
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • create:

    GML-Quellcode

    1. mystring = ""

    und dann tu ins step event:

    GML-Quellcode

    1. if !file_text_eof(file) mystring += file_text_read_string(file)

    Vielleicht hilft dir das. Ich jedenfalls lade meine Ressourcen auch immer auf diese art nach. (Game bleibt nich stecken)

    EDIT: Nen 'kleinen' Codefehler behoben (thx an Genesis)
    Kaldor - Das erste echte MMORTS

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von GamerNet ()

  • Für größere dateien würde ich empfehlen eine dll zu verwenden, die dann den inhalt als string zurück gibt.
    Denn mit einer "richtigen" Programmiersprache kann man die zu lesende Blockgröße einstellen welche ein sehr schnelles lesen begünstigt, d.h. so schnell eben die Festplatte lesen kann. Der GM kann mit den Funktionen nur ein Byte bzw. eine Zeile auf einmal lesen wodurch für das einlesen einer datei sehr viel code bzw. ein code sehr oft ausgeführt werden muss.
  • @GamerNet

    Das wäre wieder der selbe Code, wie von Windapple! Und ich habe auch schon entdeckt, warum das Prog hängen bleibt! Das läuft nämlich so ab:

    mystring wird auf '' gesetzt -> die datei wird bis zum ersten "Neue Zeile"-Zeichen eingelesen und an mystring angehängt -> überprüfung, ob man sich schon am Ende der Datei befindet!

    Wenn ja: Vorgang wird beendet.
    Wenn nein: Die Datei wird erneut VOM ANFANG bis zum ERSTEN "Neue Zeile"-Zeichen eingelesen und an mystring angehängt! Die überprüfung findet erneut statt. Natürlich befinden wir uns wieder nicht am Ende und der Vorgang wird wiederhohlt!!!

    Und das ist das problem: Ich hab leider keine Ahnung, wie ich dem Pc beibringen soll, dass er in der Datei weiterlesen soll, und nicht neu anfangen... :(

    @Bl@ckSp@rk

    Könntest du mir vieleicht erklären, wie man mit DLLs Arbeitet? Ich hab das noch nie gemacht und auch nicht den blassesten schimmer, wie man das macht und wo ich so DLLs herbekomme!
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage
  • Danke euch allen, jetzt gehts!

    @Verwurster
    Ich hab schon in der Hilfe geschaut, aber ich hab das anderst verstanden!
    Dies ist eine kreative Signatur: Stell dir genau JETZT etwas lustigs vor, das hier stehen könnte...

    Meine Homepage