Autor Beitrag
hitmiccs
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 48



BeitragVerfasst: Mi 07.01.09 21:41 
Hallo.

Falls der Threadtitel nicht aussagekräftig genug oder evtl. ungünstig gewählt ist, bitte Vorschläge machen, ich kanns grad nicht anders beschreiben. Ich habe ein Probleme mit der Bearbeitung einer Textdatei...

Die Schritte sind immer die gleichen:

- Textdatei laden und am Zeilenumbruch nacheinander in eine Stringlist laden
- eine Zeile hinzufügen
- Textdatei in einen Stream packen
- per FTP.Put hochladen.

Das Programm ist ein Uploader für Videos, den ich für ein Forum geschrieben habe. Die Textdatei beinhaltet die Dateinamen der Videos mit Angaben über Spieler und Spiel. Das Programm wird von einigen auf verschiedenen Systemen genutzt - von XP 32 Bit über Vista 32/64Bit und sogar einer hat sich gemeldet der Windows Server 2008 benutzt.

Irgendwie verhält sich das Programm bei jedem anders - was mir aber (unter anderem) Kopfzerbrechen bereitet, ist die Tatsache das die Steuerzeichen der Textdatei, nämlich CR/LF oder #$D#$A wie es im String steht, nicht immer richtig geschrieben werden. Oft fehlt einfach CR und LF steht alleine am Ende der Zeile. Dadurch verkackt meine Routine, die Liste zu zerlegen bei einigen Benutzern und es crasht.

Wie kann sowas passieren? Warum werden plötzlich Zeichen verschluckt?

Meinen Code muss ich erst auf diesen Rechner bringen, aus dem Kopf bekomm ichs grad nicht zusammen.
Liefere ich noch nach.

Danke schonmal fürs Gedanken machen.
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 07.01.09 23:11 
Hm, wenn du die Zeilen einfach mit TStringList.Add hinzufügst, sollte da CR LF am Ende stehen.
Sicher, dass das CR schon auf dem Rechner fehlt, und nicht erst nach dem FTP Upload? Handelt es sich bei dem FTP Server um eine Linux-Kiste? Linux stellt einen Zeilenumbruch ja anders dar - vllt. konvertiert der das beim Upload automatisch? Evtl. mal die Übertragungsart checken, und auf Binär stellen. Dann sollte wirklich das ankommen, was du auch abschickst.

Ansonsten.. auf den Code warten ;)

_________________
PROGRAMMER: A device for converting coffee into software.