TStrings->LoadFromMemory(..) geht nicht?



  • Moin zusammen,

    ich mache hier im Prinzip etwas total Simples, aber irgendwie... es geht nicht o0.
    Ich lade per TIdHttp eine Textdatei herunter. Wenn ich diese Datei nicht in eine lokale Datei Zwischenspeichere (Per TFileStream), dann bekomme ich den Text nicht in meine TStringList. Ich möchte den Text aber einfach in einen TMemoryStream oder TStringStream puffern und dann direkt an die TStringList weitergeben.

    Kurz (Abstrakt, kein Quellcode):

    1. Txtdatei -> TStringStream (TIdHttp download) -> TStringList, per LoadFromStream // Geht nicht!

    2. Txtdatei -> TxtDatei, per TFileStream (TIdHttp download) -> TStringStream , per LoadFromFile-> TStringList , per LoadFromFromStream // Geht!

    Etwas wirr, ich weiß^^

    Der einzige Unterschied, den ich im Debug-Modus sehe, sind die ersten drei Zahlenwerte von TStringStream->FBytes.
    Dort steht entweder
    57065032,57065032,57065032 //Geht nicht!
    oder
    57089912,57089912,57089912 //Geht!

    Bin mir nicht sicher ob das was mit dem Encoding zu tun hat.

    Hat jemand eine Idee? Kann doch nicht so schwer sein.

    Grüßle



  • Ähm ja, das schöne ist doch immer... wenn man andere fragt, kommt man meist selber drauf.
    TStringStream->Position musste nach dem Zuiweisen der Bytes wieder auf 0 zurückgesetzt werden.

    Sry


Anmelden zum Antworten