Funkcje MQL4-Funkcje operacji plikowych-File Open w Forex-Słownik poleceń MQL4 - bossa.pl
2017.10.18, godz. 09:28

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
Nagroda specjalna i tytuł BROKERA ROKU 2015
Nagroda specjalna i tytuł BROKERA
ROKU 2015, przyznane przez GPW.

logo_FMR2017aktualny.jpg Finansowa Marka Roku: wyrazista marka promująca edukację, umocnienie pozycji lidera rynku kontraktów terminowych.

nagroda najlepszy dom maklerski 2015
Najwyższa ocena dla DM BOŚ w ankiecie czytelników Gazety Giełdy Parkiet 2015r.