Announcement

Collapse
No announcement yet.

TStringList

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TStringList

    Hallo, Ich habe folgendes code bekommen um eine zeile zu lesen auf position 2.

    TStringList *list=new TStringList();
    list->LoadFromFile("afd1.txt");
    String zeile2=list->Strings[1];
    delete list;

    Aber Ich muss ein Index Parameter geben mit Strings[1] zum lesen von zweite zeile.

    Wass Ich jetz probiere ist jeden zeile zu lesen mit eine for loop ohne Index

    (wieviele zeile und wo die zeile gespeichert sein kenn ich nicht und is immer geandert)
    z.B.

    texta
    textb
    textc
    textd

    dann kann Ich weiter die strings beobachten mit eine If{}

    (Ich will nicht nur zeile 2 lesen aber sequentiel ALLE zeile in einen var)

    Danke,

  • #2
    Warum schaust du nicht in die Klassenbeschreibung??

    Oder wenn du

    list->

    eingibst, werden alle möglichen Funktionen angezeigt??

    Welche könnte da helfen??


    for(int x=0;x<list->Count;x++)
    String zeile=list->String[x];

    Es gibt weitere Funktionen

    zum Suchen ->IndexOf
    zum Zugriff auf alles Elemente in EINEM String -> Text oder CommaText

    usw.

    Also durchsuche jetzt die Liste NICHT mit einer Schleife, sondern benutze die entsprechende Funktion
    Christian

    Comment


    • #3
      Leiter muss Ich dass altes Programmkode respektieren.

      Kann Ich nicht einfach etwas machen wie

      do {

      zeile2=list->???????;

      // inhalt kontrollieren mit if und strcmp ...

      } while(strcmp(zeile,"###EOF")

      so dass Ich jeden zeile lese...oder macht voherige Kode dass ?
      dass verstehe Ich nicht ganz.

      Comment


      • #4
        for(int x=0;x<list->Count;x++)
        {
        if(list->String[x]=="###EOF")
        //....mach was

        }

        Was hat das Benutzen von IndexOf im altem Code zu tun???

        Das wird umgestellt fertig

        *kopfschüttel*
        Christian

        Comment


        • #5
          Problemm ist dass dieses Kode sehr alt ist und mehrmahls bearbeitet ist.

          Neu schreiben ist leiter nicht möghlich, Ich bekomm dazu nicht die zeit.

          Comment


          • #6
            Originally posted by Quadran View Post
            Problemm ist dass dieses Kode sehr alt ist und mehrmahls bearbeitet ist.
            Ui. Vorsicht heiß. Es scheint so das es sich hier um Lavaflow handelt.

            Originally posted by Quadran View Post
            Neu schreiben ist leiter nicht möghlich, Ich bekomm dazu nicht die zeit.
            Schon mal überlegt das du die Zeit benötigst? Du sollst ein bestehendes Produkt verändern/erweitern/... usw. Dazu ist es nötig das u.U. auch schon bestehenden Code verändern mußt. Damit du sicher bist das du hier keine Fehler einbaust solltest du solche Änderungen mittels Unittests absichern. Und das alle dauert einfach seine Zeit.

            Falls du sowas nicht kannst solltest du dir überlegen ob Software-Entwicklung der richtige Beruf für dich ist. Wenn man so deine letzten Wochen bezüglich Posts so verfolgt so mußt du ein blutjunger Anfänger sein der jede Kleinigkeit die er nicht sofort versteht per Frage in einem Forum geklärt haben will. Jedoch wirst du bei deiner scheinbaren fehlenden Eigeninitiative irgendwann keinen mehr finden der deine Fragen beantwortet.

            Comment


            • #7
              Code:
              ifstream input( "readme.txt" );
              string mystr;
              
              getline( input, mystr );
              
              cout << mystr;
              input.close();
              funkioniert wie Ich dachte.

              Comment


              • #8
                Warum einfach, wenn es auch umständlich geht...

                Nunmehr hast du den 3. Zeichenkettentyp in deinem Programm

                char ->Nativ
                String -> Borland
                string -> STL
                Christian

                Comment

                Working...
                X