Länge eines CString-Objektes ändern?!



  • Hi!
    Also ich lese mit folgenden Code aus einer Datei Strings, Zeilenweise aus:

    CString strLine;
    CStringArray arr_strLines;  
    while (m_File.ReadString(strLine))
    {
        arr_strLines.Add(strLine);
    }
    

    Das Problem ist, er liest einige Zeilen nicht vollständig ein. Ich denke mal es liegt daran, dass die Länge eines CString Objektes begrenzt ist (jedenfalls wäre das eine logische Erklärung). Ich denke mal man muß was mit .GetBufferSetlength machen, aber entweder habe ich das falsch gemacht, oder es gibt ein Problem, wenn ich das im CStringArray speicher.

    Hat jemand eine Idee. Spielt keine Rolle was für eine. Ich würde auch die Datei anders auslesen wenn es dann funktionieren würde.

    M.f.G.
    Bart



  • Nunja, wenn Deine Zeilen ungefähr 2,4Milliarden Zeichen lang sind, oder Dein RAM nicht ausreicht, um eine komplette Zeile einzulesen, dann ja. Ansonsten habe ich mit dieser Routine schon mehr als 1x Textdateien ohne Probleme eingelesen. Die grösste war >100MByte !



  • Hi!
    Danke für deine Antwort... wenigstems zeigt sie, dass es nich an der Routine liegt. Ich denke mal mein RAM reicht noch gerade so aus eine 12kB Datei einzulesen 😉 Die Zeile hat mehr als 800 Zeichen, aber es werden 252 Zeichen eingelesen... Hoffentlich finde ich noch eine Möglichkeit.

    M.f.G.
    Bart


Anmelden zum Antworten