Hallo,
ich weiß nicht ob ich gerade hier richtig bin, aber das passt gerade zu meiner Frage hier:
Also wenn ich z.B ein Fehlerausgabeprotokoll erstellen will und alle Fehler in einer TXT Datei abspeichert werden sollen, nutze ich für MODUS am Besten "a", weil dann neue Eingaben einfach hinten angehangen werden, ohne dass ich mich erst drum kümmern muss, wo der Cursor steht?
Für Zeilenumbruch besser \n oder \r\n? Ich will die Datei dann auch nicht auslesen, ich will sie am Ende einfach normal öffnen. r\n, wenn ich hauptsächlich unter Windows arbeite?
Letzte Frage: ist es sinnvoller diese "Log-Datei" am Anfang zu öffnen, alles hineinzuschreiben und am Ende des Programmes wieder zu schließen, oder ist es besser, wenn ich sie bei jedem Schleifendurchlauf öffne und dann schließe?
Logdatei schreiben
Hallomeneliel hat geschrieben:Hallo,
ich weiß nicht ob ich gerade hier richtig bin, aber das passt gerade zu meiner Frage hier:
mode a ist gut, die Datei wird allerdings immer größer und größer, bei jedem Programmdurchlaufmeneliel hat geschrieben: Also wenn ich z.B ein Fehlerausgabeprotokoll erstellen will und alle Fehler in einer TXT Datei abspeichert werden sollen, nutze ich für MODUS am Besten "a", weil dann neue Eingaben einfach hinten angehangen werden, ohne dass ich mich erst drum kümmern muss, wo der Cursor steht?
Immer nur "\n", das reicht vollkommen.meneliel hat geschrieben: Für Zeilenumbruch besser \n oder \r\n? Ich will die Datei dann auch nicht auslesen, ich will sie am Ende einfach normal öffnen. r\n, wenn ich hauptsächlich unter Windows arbeite?
Nicht immer wieder öffnen und schließen. Wenn du das ergebnis unmittelbar in die Datei reinschreiben willst nutze nach dem write(...) die Funktion flush().meneliel hat geschrieben: Letzte Frage: ist es sinnvoller diese "Log-Datei" am Anfang zu öffnen, alles hineinzuschreiben und am Ende des Programmes wieder zu schließen, oder ist es besser, wenn ich sie bei jedem Schleifendurchlauf öffne und dann schließe?
Hallo Zap,
Danke für deine schnelle Antwort.
Danke für deine schnelle Antwort.
Schon richtig, aber dafür hab ich dann alle Fehler in meinen Daten gesammelt in einer Datei stehen, ich hoffe es sind nicht zu viele, weil dann habe ich ein anderes ProblemZap hat geschrieben:[mode a ist gut, die Datei wird allerdings immer größer und größer, bei jedem Programmdurchlauf
Das flush() speichert zwischen? Das ist gut Danke für den Hinweis.Zap hat geschrieben:Nicht immer wieder öffnen und schließen. Wenn du das ergebnis unmittelbar in die Datei reinschreiben willst nutze nach dem write(...) die Funktion flush().
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Wenn du die Datei im Textmodus (also ohne "b") öffnest, schreibt die C-Library automatisch \r\n unter Windows, wenn du \n schreibst.meneliel hat geschrieben: Für Zeilenumbruch besser \n oder \r\n? Ich will die Datei dann auch nicht auslesen, ich will sie am Ende einfach normal öffnen. r\n, wenn ich hauptsächlich unter Windows arbeite?
Danke Euch.
Ich öffne nun mit "a", flushe nach jedem write und die \n funktionieren super und mein "Log- file" sieht am Ende genau so aus wie es soll.
Ich öffne nun mit "a", flushe nach jedem write und die \n funktionieren super und mein "Log- file" sieht am Ende genau so aus wie es soll.