rycodepsyco
Goto Top

Textdatei mit CRLF gespeichert, kommt aber ohne CRLF an, was ist die Ursache?

Hallo Ihr lieben,

nein ich bin kein Experte und weiß nicht einmal ob ich hier richtig bin, daher bitte ich euch für den leihen verständlich zu Antworten. face-wink

Worum geht es:

es geht um ein Gerät das ein Protokoll speichert.
Jeder neue Eintrag wird mit CRLF gespeichert, also in einer neuen Zeile.

Bsp:
Datum;Uhrzeit;Werte...
Datum;Uhrzeit;Werte...
Datum;Uhrzeit;Werte...

diese Textdatei wird auf ein FTP Server hochgeladen, bis hierhin ist alles korrekt, die Datei beinhaltet den Datensatz wie hier hoben im Beispiel.

Jetzt wird die Datei vom Server heruntergeladen und die Datei kommt dann nur noch ohne CRLF an.

Bsp:
Datum;Uhrzeit;Werte...Datum;Uhrzeit;Werte...Datum;Uhrzeit;Werte...

Dadurch kann das Protokoll nicht mehr ausgewertet werden.

Das Tool was diese Textdatei vom FTP Server abholt, wie auch der FTP Server selbst kann es nicht sein, da mehrfach korrekt auf anderen Servern im Einsatz.

Wahrscheinlich werden die Daten als ASCII abgeholt statt Binär, denn dann würde CRLF fehlen.


Die Frage lautet somit, wieso ist das so und wo stellt man dies in Windows auf Binär ein?
Das Tool nimmt es ja so wie Windows eingestellt ist (und läuft auf anderen Server normal ohne das man etwas einstellen muss, daher gibt's dazu auch keine Einstellung).
(Server 2012 R1)


Vielen Dank
RDP

Content-Key: 2737386835

Url: https://administrator.de/contentid/2737386835

Printed on: April 19, 2024 at 22:04 o'clock

Member: maretz
maretz May 10, 2022 at 08:08:22 (UTC)
Goto Top
das stellst du in windows in deinem FTP client normalerweise ein ... wobei es auch sein kann das dein Editor die Datei verändert, d.h. im zweifel mal mit nem wirklich simplen Editor (z.B. ich meine notepad++ - ich nutz kein win mehr, damals gings iirc) angucken.
Mitglied: 148523
148523 May 10, 2022 at 08:47:08 (UTC)
Goto Top
daher bitte ich euch für den leihen verständlich zu Antworten
https://www.duden.de/rechtschreibung/Laie
Ausleihen willst du ja nix.
Mal einen anderen Editor verwendet wie Notepad++ https://notepad-plus-plus.org ?
Dort kann man das gruselige CRLF von Winblows deaktivieren.
Member: MrCount
MrCount May 10, 2022 at 09:29:31 (UTC)
Goto Top
Zitat von @148523:

Dort kann man das gruselige CRLF von Winblows deaktivieren.

Wieso "gruselig"?

https://stackoverflow.com/a/1552775
Member: TK1987
TK1987 May 10, 2022 at 13:44:27 (UTC)
Goto Top
Moin,

Zitat von @MrCount:
Wieso "gruselig"?
weil der CR nervt. Braucht kein Mensch.

Gruß Thomas
Member: MrCount
MrCount May 10, 2022 at 15:12:34 (UTC)
Goto Top
Zitat von @TK1987:

weil der CR nervt. Braucht kein Mensch.

Okay, "brauchen" tut man vermutlich so einige Sachen nicht (mehr), aber logisch und historisch ist da schon Sinn hinter. face-wink
Member: TK1987
TK1987 May 10, 2022 at 16:20:15 (UTC)
Goto Top
Zitat von @MrCount:
Okay, "brauchen" tut man vermutlich so einige Sachen nicht (mehr), aber logisch und historisch ist da schon Sinn hinter. face-wink
Stimmt, bei 'ner analogen Schreibmaschine war noch ein Sinn hinter dem CR. 😛
Member: maretz
maretz May 10, 2022 at 16:25:32 (UTC)
Goto Top
Zitat von @TK1987:

Zitat von @MrCount:
Okay, "brauchen" tut man vermutlich so einige Sachen nicht (mehr), aber logisch und historisch ist da schon Sinn hinter. face-wink
Stimmt, bei 'ner analogen Schreibmaschine war noch ein Sinn hinter dem CR. 😛

Oder bei z.B. bei div. Nadeldruckern die man auch heute noch findet (z.B. Listendrucker, Telefon-Anlagen,...). Nur weil du was nicht kennst ist es lange nicht sinnlos...
Member: MrCount
MrCount May 10, 2022 at 16:39:26 (UTC)
Goto Top
Zitat von @TK1987:

Stimmt, bei 'ner analogen Schreibmaschine war noch ein Sinn hinter dem CR. 😛

Rein logisch gesehen macht es schon Sinn den Wagenrücklauf (CR/"Carriage Return") zu veranlassen, da man ja sonst nur die Zeile, nicht aber die Position innerhalb der Zeile wechselt (Zeilenvorschub/LF/"Line Feed"). face-wink 😛 face-big-smile
Mitglied: 137960
137960 May 11, 2022 at 05:58:11 (UTC)
Goto Top
Wie schon jemand anderes geschrieben hat: die Umwandlung von Zeilenende-Zeichen initialisiert der FTP-Client.
Alles, was im ASCII-Modus übertragen wird, wird von und zum Server umgewandelt. Mitunter so, dass sowohl CRs als auch LFs komplett fehlen.
Das ist für reine ASCII-Dateien gewünscht, denn Windows will nun mal CRLF und Linux bzw. macOS wollen nur LF. Man spart sich eine manuelle Konvertierung.
Wenn es aber kein ASCII ist, sondern eine Testdatei in ISO-8859 oder UTF-8 bzw. Unicode, dann kann man davon ausgehen, dass der ASCII-Transfermodus die Datei zerstören wird, sobald irgendein Zeichen vorkommt, was nicht mehr ASCII ist (Umlaute zum Beispiel).

Um bei FTP Dateien wirklich 1:1 zu übertragen, muss man entweder auf der Kommandozeile "binary" als Befehl eingeben, oder eine Einstellung im FTP-Tool finden.

Du hast nicht geschrieben, was für den Transfer benutzt wird.

Es gibt ja für fast alles RFCs: https://datatracker.ietf.org/doc/html/rfc959