Arbeiten mit Dateien. - Seite 8

 
Wenn Sie eine Datei aus einem lokalen Ordner in einen gemeinsamen Ordner oder umgekehrt kopieren müssen, verwenden Sie die Lese- und Schreibfunktionen mit den entsprechenden Flags. Welche andere Antwort würden Sie gerne hören?
Документация по MQL5: Файловые операции / FileCopy
Документация по MQL5: Файловые операции / FileCopy
  • www.mql5.com
Файловые операции / FileCopy - Документация по MQL5
 
Rosh:

Wenn Sie eine Datei aus einem lokalen Ordner in einen gemeinsamen Ordner oder umgekehrt kopieren müssen, verwenden Sie die Lese- und Schreibfunktionen mit den entsprechenden Flags. Welche andere Antwort wollten Sie hören?
Noch einmal. Ich verwende, wie Sie aus der Korrespondenz ersehen können, die Funktion FileCopy() und nicht die Lese- und Schreibfunktionen (in diesem Fall). Für diese Funktion muss ein Dateispeicherort-Flag als zweiter, nicht standardmäßiger Parameter angegeben werden. Es gibt jedoch keine Markierung, die den Speicherort der Datei als "im lokalen Ordner" angibt. Außerdem gibt es keine Erklärung für diese Situation in dem entsprechenden Hilfeabschnitt. Daher würde ich gerne eine Antwort auf meine Frage erhalten: "Was sollte ich zwischen dem ersten und dem zweiten Komma angeben, wenn ich dieFileCopy()-P arameterlistefür den Fall ausfülle, dass sich die Datei im lokalen Ordner befindet" und warum gibt es dazu keine Informationen im Referenzhandbuch?
 
Yedelkin:
Nochmals. Ich verwende, wie Sie aus der Korrespondenz ersehen können, die Funktion FileCopy() und nicht die Lese- und Schreibfunktionen (in diesem Fall). Diese Funktion erfordert die Angabe eines Dateispeicherort-Flags als zweiten Nicht-Standardparameter. Es gibt jedoch keine Markierung, die den Speicherort der Datei als "im lokalen Ordner" angibt. Außerdem gibt es keine Erklärung für diese Situation in dem entsprechenden Hilfeabschnitt. Daher würde ich gerne eine Antwort auf meine Frage erhalten: "Was soll ich beim Ausfüllen derFileCopy()-Parameterliste zwischen dem ersten und dem zweiten Komma angeben, wennsich die Datei im lokalen Ordner befindet" und warum gibt es im Handbuch keine Informationen dazu?

Wie wäre es damit. In der Hilfe heißt es ausdrücklich

[in] Kennzeichen, das den Speicherort der Datei angibt. Wenn common_flag=FILE_COMMON, dann befindet sich die Datei im gemeinsamen Ordner aller Client-Terminals. Andernfalls befindet sich die Datei im lokalen Ordner.

"Ansonsten" bedeutet jeder andere Wert, der nicht das FILE_COMMON-Bit-Flag enthält

 
stringo:

Wie wäre es damit. In der Bescheinigung heißt es eindeutig

Na ja... Das ist eigentlich nicht sehr fair. Ich bin mit diesem Thema nicht vertraut:

[in] Das Flag, das den Speicherort der Datei angibt. Wenn common_flag=FILE_COMMON, dann befindet sich die Datei im gemeinsamen Ordner aller Client-Terminals. Andernfalls befindet sich die Datei im lokalen Ordner.

würde man meinen,dass sich die Datei für DATEI_KOMMON im gemeinsamen Ordner und für DATEI_KOMMON + 1 im lokalen Ordnerbefinden würde , obwohl dies nicht der Fall ist.

Können wir wirklich eine Konstante FILE_LOCAL == 0 einführen?

 
stringo:

Wie wäre es damit. In der Hilfe heißt es ausdrücklich

[in] Kennzeichen, das den Speicherort der Datei angibt. Wenn common_flag=FILE_COMMON, dann befindet sich die Datei im gemeinsamen Ordner aller Client-Terminals. Andernfalls befindet sich die Datei im lokalen Ordner.

"Ansonsten" bedeutet jeder andere Wert, der nicht das FILE_COMMON-Bit-Flag enthält

Vielleicht ist Ihnen und den Fachleuten, die sich hier zu Wort gemeldet haben, klar, worum es hier geht. Betrachten Sie dieselbe Frage jedoch mit den Augen eines gewöhnlichen, nicht-professionellen Nutzers.

Für einen mittelmäßigen Benutzer wie mich gibt es eine einfache Logik:

  1. Wenn ein Parameter keine Standardwerte hat, muss er explizit angegeben werden;
  2. die Liste der Flaggen, die für den Parameter common_flag gelten, wird explizit über den Link "Flag" angegeben;
  3. In dieser Liste gibt es kein Kennzeichen für den lokalen Ordner;
  4. die Formulierung "Andernfalls..." ist überhaupt nicht klar. "Sonst" bedeutet, dass das Flag FILE_COMMON nicht angegeben ist. Das bedeutet, dass das Kennzeichen überhaupt nicht angegeben werden sollte. Dies widerspricht jedoch Klausel 1. Was die Möglichkeit betrifft, andere Flaggen/Werte anzugeben, so ist die Beschreibung völlig leer.

Wenn also etwas "explizit" im Handbuch angegeben ist, gilt es natürlich nicht für alle :)

 
Yedelkin:

Vielleicht ist Ihnen und den Fachleuten, die sich hier geäußert haben, klar, worum es hier geht. Betrachten Sie dieselbe Frage jedoch mit den Augen des durchschnittlichen nicht-professionellen Nutzers.

Für einen mittelmäßigen Benutzer wie mich gibt es eine einfache Logik:

  1. Wenn ein Parameter keine Standardwerte hat, muss er explizit angegeben werden;
  2. die Liste der Flaggen, die für den Parameter common_flag gelten, wird explizit über den Link "Flag" angegeben;
  3. In dieser Liste gibt es kein Kennzeichen für den lokalen Ordner;
  4. Die Formulierung "Andernfalls..." ist überhaupt nicht klar. "Sonst" bedeutet, dass das FlagFILE_COMMON nicht angegeben ist. Das bedeutet, dass das Kennzeichen überhaupt nicht angegeben werden sollte. Dies widerspricht jedoch Klausel 1. Was die Möglichkeit betrifft, andere Flaggen/Werte anzugeben, so ist die Beschreibung völlig leer.

Wenn also etwas "ausdrücklich" im Handbuch aufgeführt ist, ist es offensichtlich nicht für jeden geeignet :)

Das Fehlen einer Flagge ist Bit 0. Es ist wie das "Vaterunser", sorry.

Warum fragen Sie nicht nach den Multiplikationsregeln in der Dokumentation und gleichzeitig nach dem Einmaleins?

 
TheXpert:

Vielleicht sollten wir wirklich die Konstante FILE_LOCAL == 0 einführen?

Es gibt einen Witz über einen Pascal-Programmierer. Der Programmierer stellt ein Glas Wasser auf den Nachttisch, wenn er nachts durstig ist. Er stellt auch ein leeres Glas hin, wenn er nicht durstig ist.
 
stringo:

Das Fehlen einer Flagge ist Bit 0. Es ist wie das "Vaterunser", sorry.

Warum fragst du nicht auch nach den Multiplikationsregeln in der Dokumentation und dem Einmaleins?

Verstehe, Sie wollen das Problem nicht mit den Augen eines mittelmäßigen Nutzers sehen. Ich danke Ihnen allen für den Hinweis auf die Null. Wie man so schön sagt: Der Rest der Nichtfachleute soll es selbst herausfinden, wenn sie darauf stoßen.
 
Yedelkin:
Verstehe, Sie wollen das Problem nicht mit den Augen eines mittelmäßigen Nutzers sehen. Vielen Dank für den Tipp mit der Null. Wie man so schön sagt: Der Rest der Nichtfachleute soll es selbst herausfinden, wenn sie darauf stoßen.

Hier kommunizieren wir, damit diese "Nichtfachleute" etwas lernen können. Oder nicht?

Und es ist unwahrscheinlich, dass wir solche Details in die Dokumentation aufnehmen. Ich habe Ihnen schon einmal davon erzählt. Und ich habe meine Gründe genannt.

 
stringo:

Hier kommunizieren wir, damit diese "Nichtfachleute" etwas lernen können. Oder nicht?

Ganz genau. Und das habe ich schon oft betont. Aber wenn die Dokumentation einen kurzen, eindeutig verständlichen Satz hätte, gäbe es keine Kommunikation :)

stringo:

Wir werden solche Details kaum in die Dokumentation aufnehmen. Ich habe Ihnen schon einmal davon erzählt. Und ich habe meine Gründe genannt.

Ein solches Thema wird mehr als einmal auftauchen. Während der Diskussion über dieses spezielle Problem konnte ich 20 Sekunden finden, um 2-3 Wörter in der Dokumentation zu korrigieren. Aber es ist eine Frage der Perspektive, wie ich finde :)