und werden Sie Mitglied unserer Fangruppe
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Bewerten Sie es im Terminal MetaTrader 5
- Ansichten:
- 895
- Rating:
- Veröffentlicht:
- 2016.03.21 15:31
- Aktualisiert:
- 2016.11.22 07:34
-
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance
Eine Bibliothek um mit Dateien auf Basis der win API zu arbeiten. Ohne Standort Beschränkungen.
Zum augenblicklichen Zeitpunkt ist nur der read-only Modus implementiert. Diese Bibliothek wird noch aktualisiert.
- Die Dateien FileUnlimited.mqh, FileUnlimitedConstants.mqh, und StringUtils.mqh müssen in das folgende Verzeichnis kopiert werden terminal_data_folder\MQL5\Include\TheXpert;
- Die Datei ConstFileUnlimited.mqh Muss in das folgende Verzeichnis kopiert werden terminal_data_folder\MQL5\Libraries\TheXpert;
- Die Datei FileUnlimitedTest.mq5 muss in das folgende Verzeichnis kopiert werden terminal_data_folder\MQL5\Scripts.
Ich habe versucht die Verwendung dieser Klasse so einfach wie möglich zu halten.
Ein Beispiel eine Anwendungsmöglichkeit (das Skript):
#include <TheXpert/FileUnlimited.mqh> #include <TheXpert/StringUtils.mqh> #define CP_UTF16 1200 void OnStart() { string name = "TheXpert\\Test.txt"; string path = TerminalInfoString(TERMINAL_DATA_PATH) + "\\MQL5\\Files\\" + name; int hFile = FileOpen(name, FILE_WRITE | FILE_TXT, ' ', CP_UTF16); if (hFile == INVALID_HANDLE) { Print("File not opened."); return; } bool writeBool = false, readBool = true; long writeLong = -4369549, readLong = 0; double writeDouble = -4369549.245, readDouble = 0; datetime writeDatetime = 2596824987, readDatetime = 0; color writeColor = Blue, readColor = White; string writeString = "2r4i6bf4wb9tb69vw", readString = ""; FileWrite(hFile, writeBool); FileWrite(hFile, writeLong); FileWrite(hFile, writeDouble); FileWrite(hFile, writeDatetime); FileWrite(hFile, writeColor); FileWrite(hFile, writeString); FileClose(hFile); // --------------------------------------------- // Ab hier wird die Bibliothek benutzt. // --------------------------------------------- ConstFile* file = OpenConstFile(path); if (CheckPointer(file) != POINTER_INVALID) { file.Read(readBool); Print("readBool = ", readBool); file.Read(readLong); Print("readLong = ", readLong); file.Read(readDouble); Print("readDouble = ", readDouble); file.Read(readDatetime); Print("readDatetime = ", readDatetime); file.Read(readColor); Print("readColor = ", readColor); file.Read(readString); Print("readString = ", readString); delete file; } else { Print("Failed to open ConstFile at path -- ", path); } }
Die Bibliothek arbeitet nur mit Unicode-Dateien. Aus diesem Grund benutzen wir die CP_UTF16 code page (Aus irgendeinem Grund ist sie nicht als Konstante in der Programmiersprache enthalten).
Bitte informieren Sie mich über alle eventuell auftretenden Fehler in den Kommentaren oder in einem neuen Thread.
Kommentare Vorschläge und konstruktive Kritik sind immer willkommen.
Lasst uns etwas Nützliches für jedermann machen!
Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/386

Der Ergodic DTI-Oscillator (Directional Trend Index) von William Blau.

Directional Trend Index (DTI) Indicator von William Blau.