Zajmiemy się teraz podstawowymi operacjami na plikach – przyda się to w dalszej części poradnika, gdy będę tłumaczył ideę plików *.ini i pracy na nich.
Pierwszym ważnym poleceniem jest FileOpen, nakazuje ono na otwarcie pliku. Jeżeli plik o podanej nazwie nie zostanie odnaleziony, zostanie on stworzony.
FileOpen(“Test.txt“,FLAGA)
Dostępne flagi dla tego polecenia (wybrane, jest ich trochę więcej ale tych używa się najczęściej):
0 – otwiera plik tylko do odczytu,
1 – otwiera plik do zapisu,
2 – Usuwa poprzednią zawartosc pliku i otwiera go do zapisu
4 – odczytuje plik w trybie RAW
dodając cyfrę 8 do flagi tworzymy strukturę katalogów, jeśli nie istnieje. Przykład:
FileOpen(“C:\Windows\tymczasowy\Test.txt“,9) ; 1 + 8 Otwiera plik do zapisu w określonej lokalizacji, jeżeli plik nie istnieje zostanie utworzony wraz z katalogiem.
Kolejne poleceniem jest FileClose – zamyka on, uprzednio otwarty plik.
FileClose(“Test.txt“)
Zamykanie plików jest bardzo ważne, pozwala oszczędzić trochę pamięć komputera.
Ok, potrafisz już otworzyć i zamknąć plik.
Pierwszym poleceniem, które nakazuje zapisać dane do pliku jest FileWrite
FileOpen(“Test.txt“,1)
FileWrite(*Test.txt“,”Jakiś tekst”)
FileClose(“Test.txt“)
Po uruchomieniu tego skryptu w katalogu roboczym zostanie utworzony plik Test.txt, zaś w nim tekst “Jakiś tekst”.
FileWrite zapisuje dane ciągiem, aby zaznaczyć koniec linii musimy napisać @CRLF – to taki “Enter” w AutoIt.
FileOpen("Test.txt",2) FileWrite("Test.txt","Jakiś tekst") FileWrite("Test.txt", @CRLF) ; Koniec linii FileWrite("Test.txt","Jakiś tekst 2") FileClose("Test.txt")
Drugim poleceniem nakazującym zapisać dane do pliku jest FileWriteLine. Te polecenie różni się od poprzedniego jedynie tym, że zawsze dopisuje dane od nowej linii dokumentu:
FileOpen("Test.txt",2) FileWriteLine("Test.txt","Jakiś tekst") FileWriteLine("Test.txt","Jakiś tekst 2") FileClose("Test.txt")
Ok, potrafimy już wprowadzić dane do pliku, teraz nauczę was jak je odczytać.
Bliźniaczym poleceniem do FileWrite, nakazującym odczytanie dokumentu jest FileRead.
FileOpen("Test.txt",0) MsgBox(0,"Test", FileRead("Test.txt")) FileClose("Test.txt")
FileRead posiada swoją flagę, którą jesteśmy w stanie określić ile znaków ma zostać odczytane z pliku:
FileOpen("Test.txt",0) MsgBox(0,"Test", FileRead("Test.txt",5)) FileClose("Test.txt")
W tym przypadku zostanie odczytanych pierwszych 5 znaków (słowo “Jakiś”)
Drugie polecenie to FileReadLine – służy do odczytania wybranej przez nas linii tekstu:
FileOpen("Test.txt",0) MsgBox(0,"Test", FileReadLine("Test.txt",2)) FileClose("Test.txt")
Oczywiście, powyższe przykłady to tylko wierzchołek góry lodowej, co Autoit potrafi zrobić z plikami – bardziej zaawansowane operacje przedstawię w dalszej części poradnika.