Du kannst programmieren, aber nicht lesen?
;)
https://www.mql5.com/de/docs/constants/io_constants/fileflags:
und dann auch: https://www.mql5.com/de/docs/files/fileseek
Also:
filehandle=FileOpen("logfile2.csv",FILE_READ|FILE_WRITE|FILE_CSV); if(..){..} if(FileSeek(filehandle,0,SEEK_END)==true) {..}
![Dokumentation zu MQL5: Konstanten, Enumerationen und Strukturen / Eingabe/Ausgabe Konstanten / Flaggen der Dateieroeffnung Dokumentation zu MQL5: Konstanten, Enumerationen und Strukturen / Eingabe/Ausgabe Konstanten / Flaggen der Dateieroeffnung](https://c.mql5.com/36/57/dokumentation-zu-mql5-konstanten__4.png)
- www.mql5.com
Artikel rund ums Thema Logging
![Fehler finden und Protokollierung Fehler finden und Protokollierung](https://c.mql5.com/36/57/fehler-finden-und-protokollierung.jpg)
- www.mql5.com
Du kannst programmieren, aber nicht lesen?
;)
https://www.mql5.com/de/docs/constants/io_constants/fileflags:
und dann auch: https://www.mql5.com/de/docs/files/fileseek
Also:
ich mag solche überheblichen Kommentare immer ganz besonders gerne.
Dieser Stand ist nur der aktuelle, wie ich geschrieben habe und Du ganz bestimmt gelesen haben könntest.
Deine Tips führen im übrigen dazu, dass gar kein Logfile mehr erstellt wird.
ich mag solche überheblichen Kommentare immer ganz besonders gerne.
Dieser Stand ist nur der aktuelle, wie ich geschrieben habe und Du ganz bestimmt gelesen haben könntest.
Deine Tips führen im übrigen dazu, dass gar kein Logfile mehr erstellt wird.
Entschuldige, wenn Dich das beleidigt hast, aber es gibt zu viele, die sofort fragen (meistens immer dasselbe), ohne vorher zB. einfach mal in der Dokumentation (zT. mit ausführlichen Beispielen, die man einfach kopieren kann) nachschauen oder hier zu suchen. Es passiert sogar, dass in einem Thread eine Frage gestellt wird, die drei Posts weiter oben bereits beantwortet wurde. Verzeih, wenn ich da einmal zu scherzen versuche.
Außerdem gehört doch das Öffnen und Schreiben von Dateien zur Grundlage des Programmierens.
PS. Hier gibt es eine Liste aller Funktionen mit Kurzbeschreibung, sodass man nach Schlüsselwörtern suchen kann (Ctrl+F): https://www.mql5.com/de/docs/function_indices
![Dokumentation zu MQL5: MQL5 Funktionenliste Dokumentation zu MQL5: MQL5 Funktionenliste](https://c.mql5.com/36/57/dokumentation-zu-mql5-mql5-funktion.png)
- www.mql5.com
Ganz genau. Und deshalb habe ich schweren Herzens im Forum gefragt, was ich normalerweise nicht mehr tu, wegen genau solcher Antworten. Oder wegen Antworten mit Fragen, warum man das denn so und nicht ganz anders macht.
Ich habe fast eine Woche an diesem blöden Logfile gebastelt und alle mir erdenklichen Variationen probiert. Nichts hat funktioniert.
Und wer jetzt ganz aufmerksam war, hat sogar gesehen, dass mein gepostetes Beispiel fast dem Manual entspricht, wo drin steht, dass es funktionieren soll.
So von wegen Deinem "Du kannst programmieren aber nicht lesen?"
Selbst, wenn ich den fileopen Beispielquelltext per copy und paste teste, geht es nur mit einer einzigen Zeile. Von daher bringen mir Eure Verweise auf Manuals überhaupt nichts, weil es eben nicht geht.
Danke an @Dominik Christian Egert, der Tip mit der MQLplus library war schön, die kannte ich nicht aber die scheint auch keine Logfiles zu können.
Und bei Christians Tip bin ich noch nicht durch.
Ansonsten "aber es gibt zu viele, die sofort fragen (meistens immer dasselbe), ohne vorher zB. einfach mal in der Dokumentation".
Weiß ich, nervt mich selbst. Daher vielleicht ein kurzer Hinweis auf meine Vita:
ca. 1980 angefangen mit Sinclair ZX81, dann ZX Spektrum => autodidaktisch programmieren gelernt
1987 Das erste mal im Internet gewesen mit telnet, ftp und gopher
Seit ca. 1990 täglich mindestens 8 Stunden am Computer rumnerden mit Visual Basic, C, C++, Perl auf Windows, Unix (HPUX, AIX, Solaris, AT&T, BSD) und Linux Rechnern.
Seit 1993 verdiene ich mein mageres Salär hauptberuflich mit der Entwicklung und Begutachtung von hochsicheren Computersystemen.
Reicht das, dass Du mir zugestehst, auch wenn ich manchmal blöd bin und den Wald vor lauter Bäumen nicht sehe, das ich ausreichend weiß, von was ich spreche?
Um so weniger verstehe ich jetzt Deine Frage.
- Ein einfache Suche nach: csv datei (https://www.mql5.com/de/search#!keyword=csv%20datei) hätte Dich
- zu dem geführt: https://www.mql5.com/de/articles/2720
- und dann einfach mit Ctrl-F "hinzufügen" suchen und schon steht man über einem Skript, das tut, was Du suchst ("Die finale Script-Code für das Hinzufügen ist wie folgt:":
void OnStart(){ int h=FileOpen("test.txt",FILE_READ|FILE_WRITE|FILE_ANSI|FILE_TXT); if(h==INVALID_HANDLE){ Alert("Error opening file"); return; } FileSeek(h,0,SEEK_END); FileWrite(h,"Additional line"); FileClose(h); Alert("Added to file"); }
Danke! Dann ist es jetzt gelöst.
Mit Deinem Beispiel oben funktioniert es.
Mit dem der Doku aber nicht (auch jetzt immer noch nicht, habs extra nochmal getestet)
https://www.mql5.com/de/docs/files/fileopen
Also damit meine ich das so:
// int h=FileOpen("test.txt",FILE_READ|FILE_WRITE|FILE_ANSI|FILE_TXT); // Funktioniert // int h=FileOpen("test.txt", FILE_WRITE|FILE_CSV); // Funktioniert nicht int h=FileOpen("logfile2.csv", FILE_READ|FILE_WRITE|FILE_CSV); if(h==INVALID_HANDLE){ Alert("Error opening file"); return; } FileSeek(h,0,SEEK_END); FileWrite(h,txt); FileClose(h);
![Dokumentation zu MQL5: Dateioperationen / FileOpen Dokumentation zu MQL5: Dateioperationen / FileOpen](https://c.mql5.com/36/57/dokumentation-zu-mql5-dateioperationen.png)
- www.mql5.com
Ganz genau. Und deshalb habe ich schweren Herzens im Forum gefragt, was ich normalerweise nicht mehr tu, wegen genau solcher Antworten. Oder wegen Antworten mit Fragen, warum man das denn so und nicht ganz anders macht.
Ich habe fast eine Woche an diesem blöden Logfile gebastelt und alle mir erdenklichen Variationen probiert. Nichts hat funktioniert.
Und wer jetzt ganz aufmerksam war, hat sogar gesehen, dass mein gepostetes Beispiel fast dem Manual entspricht, wo drin steht, dass es funktionieren soll.
So von wegen Deinem "Du kannst programmieren aber nicht lesen?"
Selbst, wenn ich den fileopen Beispielquelltext per copy und paste teste, geht es nur mit einer einzigen Zeile. Von daher bringen mir Eure Verweise auf Manuals überhaupt nichts, weil es eben nicht geht.
Danke an @Dominik Christian Egert, der Tip mit der MQLplus library war schön, die kannte ich nicht aber die scheint auch keine Logfiles zu können.
Und bei Christians Tip bin ich noch nicht durch.
Ansonsten "aber es gibt zu viele, die sofort fragen (meistens immer dasselbe), ohne vorher zB. einfach mal in der Dokumentation".
Weiß ich, nervt mich selbst. Daher vielleicht ein kurzer Hinweis auf meine Vita:
ca. 1980 angefangen mit Sinclair ZX81, dann ZX Spektrum => autodidaktisch programmieren gelernt
1987 Das erste mal im Internet gewesen mit telnet, ftp und gopher
Seit ca. 1990 täglich mindestens 8 Stunden am Computer rumnerden mit Visual Basic, C, C++, Perl auf Windows, Unix (HPUX, AIX, Solaris, AT&T, BSD) und Linux Rechnern.
Seit 1993 verdiene ich mein mageres Salär hauptberuflich mit der Entwicklung und Begutachtung von hochsicheren Computersystemen.
Reicht das, dass Du mir zugestehst, auch wenn ich manchmal blöd bin und den Wald vor lauter Bäumen nicht sehe, das ich ausreichend weiß, von was ich spreche?
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo,
für ein Expertenmodul will ich ein Logfile mitschreiben.
Eigentlich dachte ich, ich könnte programmieren aber hier weiß ich einfach nicht mehr weiter.
Ich habe jetzt alles ausprobiert. Dies ist mein letzter Stand:
Warum funktioniert die Ausgabe nur ein einziges mal?
Das heisst, der erste Aufruf von debugLog funktioniert. Die Datei wird angelegt, der Eintrag in die Datei geschrieben, das Logfile geschlossen.
Das wars. Danach kommt nie wieder was in diese Datei.
Es kommt auch keine Fehlermeldung. Es passiert einfach rein gar nichts.
Kennt jemand das Problem und kann mir sagen, wo das Problem liegt?