Funkcje MQL4-Funkcje operacji plikowych-File Open w Forex-Słownik poleceń MQL4 - bossa.pl
2019.03.26, godz. 03:07

FileOpen

Jest to jedna z najważniejszych funkcji plikowych otwierająca plik i zwracająca identyfikator, tak zwany uchwyt pliku wykorzystywany przez pozostałe funkcje np. odczytu czy zapisu danych do pliku. Aby uzyskać szczegółowe informacje o błędzie, korzystamy z funkcji GetLastError().

Uwaga! Pliki mogą być otwierane tylko ze standardowych katalogów widocznych przez terminal MT4: terminal_dir\experts\file, terminal_directory\tester\file oraz z podkatalogów.

 

Parametry otwarcia pliku mogą być łączone (|). Wyjątkiem jest tryb formatu pliku, którego nie można stosować jednocześnie FILE_BIN i FILE_CSV. Jeśli zastosujemy jednocześnie tryb FILE_WRITE oraz FILE_READ to otwarty zostanie plik wyzerowany, pusty w trybie do zapisu i odczytu, a jeśli wcześniej w pliku były dane to zostaną one usunięte. Z trybu FILE_READ, korzystamy gdy chcemy otworzyć istniejący plik tylko do odczytu, a z FILE_WRITE gdy chcemy utworzyć nowy plik.
Możemy otworzyć jednocześnie maksymalnie 32 pliki w ramach jednego programu, modułu EA, wskaźnika, skryptu, biblioteki i nie możemy przekazywać uchwytu pliku po między modułami.

 

Składnia:

int FileOpen( string nazwa_pliku, int mode, int delimiter=';')
Parametry
nazwa_pliku – nazwa pliku do otwarcia
mode – tryb otwarcia pliku może mieć poniższe wartości, łączone:
- FILE_BIN – otwiera plik w trybie binarnym
- FILE_CSV – otwiera plik w trybie tekstowym
- FILE_READ – otwiera plik do odczytu
- FILE_WRITE – otwiera plik do zapisu
delimiter – separator dla plików tekstowych typu csv. Domyślna wartość
jeśli nie podamy podczas wywołania to średnik (;)
Wartość zwracana
identyfikator, uchwyt pliku

Przykład:

int handle;
handle = FileOpen("moje_dane.csv",FILE_CSV|FILE_READ,';');
if(handle<1)
{
Print("Nie można otworzyć pliku moje_dane.dat, błąd otwarcia pliku =",
GetLastError());
return(false);
}
bos bank logo
Grupa kapitałowa

Tytuł BROKERA ROKU przyznany
przez Giełdę Papierów Wartościowych
w Warszawie.


Finansowa Marka Roku

za oferowanie usług i produktów najwyższej jakości na rynku inwestycyjnym.


Od 13 lat DM BOŚ S.A.
jest w pierwszej trójce rankingu
Najlepszych Biur Maklerskich SII.