AutoIt Textdatei auslesen

1 Antwort

Hallo Im1909.

Es ist nicht wirklich kompliziert.

Wenn ich dich richtig verstanden haben, willst du mit Hilfe von AutoIT eine Zeile einer Datei in eine Variable Speichern und anschließend etwas mit der Variable anstellen. Danach soll die Variable mit der nächsten Zeile überschrieben werden, oder?

$datei = FileRead("data.txt")
$variable = StringSplit($datei, @CRLF)
For $i = 1 To $variable[0] Step 2
    MsgBox(0, "", $variable[$i])
Next
Exit

So würde ich das jetzt machen, aber da ist die Überschreibung der Variable nicht dabei.

Wenn dir die wirklich wichtig ist, dann habe ich aber auch eine Lösung.

$zeilenanzahl = 3

For $i = 1 To $zeilenanzahl
    $variable = FileReadLine ("data.txt",$i)
    MsgBox (0,"",$variable)
Next
Exit

Die erste Zeile muss entsprechend geändert werden. Zudem kannst du natürlich die MsgBox rausschmeißen :)

Wenn du das mit den Zeilenzählen nicht immer neu eintragen kannst, musst du wohl auf eine andere Funktion in "#include <File.au3>" zugreifen. Die Datei muss aber immer für AutoIT zugreifbar sein.

#include File.au3 ;Hier sollten eigentlich klammern stehen.....

$ort = "data.txt"
$zeilenanzahl = _FileCountLines ($ort)

For $i = 1 To $zeilenanzahl
    $variable = FileReadLine ($ort,$i)
    MsgBox (0,"",$variable)
Next
Exit

Falls du dass nicht verstanden hast, dann frag mich bitte nochmal. Kann sein, das das jetzt zu kompliziert ist.

Dornteufel

AutoITScripter  01.08.2012, 22:53

Dornteufel hat mal wieder eine super Lösung abgeliefert^^ Kompliment @ Dornteufel -- again ;-)

Ich find die letzte am besten, da die Zeile immer in $variable geschrieben wird. Somit solltest Du in dem For -- Next Block also statt Msgbox die Bearbeitung machen, die Du möchtest, denn im nächsten For-Next Durchlauf ist die Variable ja bereits wieder überschrieben ;-)

Gruß

0