Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 976

 
Wie lösche ich eine Zeile in einer Datei? Ich habe zum Beispiel etwas mitFileWriteString() geschrieben, und jetzt brauche ich ein leeres Feld in diesem Feld, wie mache ich das?
 
Alexandr Sokolov:
Wie kann ich eine Zeile in einer Datei löschen? Ich habe zum Beispiel etwas mit FileWriteString() geschrieben, und jetzt brauche ich ein leeres Feld an dieser Stelle, wie mache ich das?

der Zugriff auf Dateidaten ist ein sequentieller Zugriff, Sie können nicht einfach Daten irgendwo in der Datei löschen

 
Igor Makanu:

der Zugriff auf Dateidaten ist ein sequentieller Zugriff, Sie können nicht einfach Daten irgendwo in der Datei löschen

GUT. Und wie kann ich sie überhaupt löschen? Denn ich habe die entsprechenden Funktionen in der Hilfe nicht gesehen, z.B. gibt es eine für das Schreiben, aber keine für das Löschen

* außer Ersetzung durch "leer" - " "?

 
Alexandr Sokolov:

Ja. Und wie löscht man? Denn ich habe in der Hilfe keine entsprechenden Funktionen gesehen, zum Beispiel gibt es eine für das Schreiben, aber keine für das Löschen.

* außer Ersetzung durch "leer" - " "?

ein weiteres Mal... es gibt einen zufälligen und einen sequentiellen Datenzugriff

Wenn es sich um eine sequentielle Datei handelt, lesen und schreiben Sie in eine Richtung, soweit die Datei betroffen ist:

1. öffnen und lesen - Dateizeiger verschoben

2. öffnen und schreiben - Dateizeiger verschoben, dann wieder schreiben - Dateizeiger verschoben.....


Sie können den Dateizeiger selbst mit FileSeek() verschieben und von diesem Ort aus weiterschreiben.

Sie können eine Datei zum Lesen öffnen, so viele Bytes wie nötig in den Speicher lesen und dann die Datei wieder schließen, sie nur zum Schreiben wieder öffnen und das Gelesene in die Datei schreiben, so dass alles, was Sie nicht brauchen, entfernt wird und... und vergessen Sie nicht, die Daten hinzuzufügen, die nach dem gelöschten Fragment kamen.


Suchen Sie nach einem Artikel im Forum, ich glaube, es sollte einen über Dateiverwaltung geben.

 
Igor Makanu:

ein weiteres Mal... es gibt einen zufälligen und einen sequentiellen Datenzugriff

Wenn es sich um eine sequentielle Datei handelt, lesen und schreiben Sie in eine Richtung, soweit die Datei betroffen ist:

1. öffnen und lesen - Dateizeiger verschoben

2. öffnen und schreiben - Dateizeiger verschoben, dann wieder schreiben - Dateizeiger verschoben.....


Sie können den Dateizeiger selbst mit FileSeek() verschieben und von diesem Ort aus weiterschreiben.

Sie können eine Datei zum Lesen öffnen, so viele Bytes wie nötig in den Speicher lesen und dann die Datei wieder schließen, sie nur zum Schreiben wieder öffnen und das Gelesene in die Datei schreiben, so dass alles, was Sie nicht brauchen, entfernt wird und... und vergessen Sie nicht, die Daten hinzuzufügen, die nach dem gelöschten Fragment kamen.


So sieht die Arbeit mit einer Datei im Grunde aus. Suchen Sie nach einem Forumsartikel, ich glaube, es sollte einen über die Arbeit mit Dateien geben

Ich werde es mir ansehen. Ich werde mich damit befassen.

 

Leute, habt ihr eine Idee?

 
Hallo. Ich habe ein Problem beim Abrufen von Daten aus dem iMFI-Indikator.
double ifmi_indicator = iMFI(symb_pair_with_suffix, StringToInteger(duration), 10, 1);

Dieser Code wird über einen Timer von einem anderen Diagramm aus aufgerufen. Eine, auf der der EA steht, den Rest der Daten bekomme ich aus dem Code. Die Daten von ifmi_indicator stimmen nicht mit dem überein, was ich im Terminal erhalte, wenn ich den Indikator für dieses Symbol auf dem aktuellen Balken oder auf dem vorherigen Balken betrachte. Was ist das Problem? Manchmal sind die Daten, die ich erhalte, noch seltsamer als die, die ich bei der manuellen Überprüfung des Diagramms erhalte. Ich sehe zum Beispiel den Wert 20, aber der Code zeigt 70 an. Was könnte das Problem sein?

Die Sprache ist mql4.
 
Wie man dem Indikator Minuten hinzufügt, jetzt nur noch Stunden.
Dateien:
 

Guten Tag!

Ich interessiere mich für den Gator-Indikator. Dem Handbuch habe ich entnommen, dass es möglich ist, die Werte der oberen und unteren Histogrammlinien zu extrahieren. Ich interessiere mich aber mehr für die Farbe der Linie und ihren Wert an zweiter Stelle, nur wenn die obere und die untere Linie unterschiedliche Farben haben. Wie extrahiere ich die Farbe, so dass ich anschließend die Werte der grünen und der roten Linie vergleichen kann?

 
novichok2018:

Guten Tag!

Ich interessiere mich für den Gator-Indikator. Dem Handbuch habe ich entnommen, dass es möglich ist, die Werte der oberen und unteren Histogrammlinien zu extrahieren. Ich interessiere mich aber mehr für die Farbe der Linie und ihren Wert an zweiter Stelle, nur wenn die obere und die untere Linie unterschiedliche Farben haben. Wie extrahiere ich die Farbe, so dass ich anschließend die Werte der grünen und der roten Linie vergleichen kann?

Wenn der aktuelle Wert höher ist als der vorherige Wert, dann ist er grün und der Puffer ist anders, in mql4, und wenn das Gegenteil wahr ist, dann ... und umgekehrt.))))

Grund der Beschwerde: