Zeile ermitteln viel zu langsam

  • Hallo,

    ich habe eine längere Textdatei und möchte dort nun die Zeile ermitteln, indem sich das Wort " Test 1 " befindet.

    Ich habe es mal mit _FileReadToArray und FileReadLine probiert, aber beides ist viel zu langsam.

    Geht das nicht irgendwie schneller oder gibt es ein Befehl wie _FileLineInString() ?

    Mfg, Julien

  • Um die Datei einzulesen ist _FileReadToArray zu Anfang am besten geeignet denke ich, danach kann das Array ja zeilenweise durchsucht werden. Von was für Zeiten reden wir denn hier? Eigentlich geht das schon in machbarer Zeit.

  • Hat sich schon erledigt, kam daher, dass ich

    If GuiGetMsg() = $GUI_EVENT_CLOSE Then Exit

    mit reingebracht habe, deshalb hat er viel viel länger gebraucht, warum auch immer.

    Ohne diese Abfrage dauert es nur paar Sekunden.

    * Habe mal die benötigte Zeit überprüft.

    Mit der Abfrage hat es 33,3 Sekunden bei mir gebraucht und ohne Abfrage 0,6 Sekunden...

  • GuiGetMsg() macht automatisch ein 25 millisek. sleep()

    und ich gehe mal davon aus du vergleichst die Datei in einer For schleife
    dadurch ist es eh sinnlos dort GuiGetMsg() abzufragen

  • Wieso ist es sinnlos? Wenn es z.B. länger dauert , dann muss der Benutzer ja auch eine Chance haben, das Skript zu beenden ...

  • da gäbe es sinnvollere methoden um es ab zu brechen ;)

    HotKeySet als grobe möglichkeit
    oder OnEvent modus, GUISetAccelerators, _isPressed ....

    alles besser als mit GUIGetMsg() zu fragen ob beendet werden soll^^


    aber muss jeder selbst entscheiden :)