Einen String bearbeiten und auswerten mit Borland Builder



  • Hallo.

    Ich bin C++ Neuling und arbeite mit dem C++ Borland Builder. Ich muss eine Textdatei analysieren, bearbeiten und teilweise ausgeben. Nachfolgend, wie ich mir das ungefähr vorstelle. Mir fehlen aber noch einige Anweisungen, bzw. geht das überhaupt so?

    Das hier ist eineDatei mit ganz vielen Zeilen
    und noch viel mehr Zeichen, wobei es auch
    noch Sonderzeichen gibt. Diese und irgendwelche Substrings sollen gefunden und ausgewertet werden.

    Datei öffnen iFileHandle=FileOpen (OpenDialog1 ->FileName, fmOpenRead);
    Feststellen, wieviel Zeichen in der Datei sind iFileLength = FileSeek (iFileHandle,0,2);
    Zeiger auf erstes Zeichen in der Datei FileSeek (IfileHandle,0,0);

    Suchen nach einem bestimmten Teilstring “abc“
    und dabei Zeiger bei jedem gelesenen Zeichen erhöhen iZeigerVomAnfang +1

    wenn Teilstring gefunden, dann Position des Zeigers merken iPosZeiger1 =

    Suchen nach einem anderen Teilstring “xyz“
    und dabei Zeiger bei jedem gelesenen Zeichen erhöhen iZeigerVomAnfang +1
    und Zeiger von der letzten Position erhöhen iPosZeiger +1

    wenn zweiter Teilstring gefunden, dann
    Position des Zeigers vom Anfang merken iZeigerVomAnfang =
    Position des Zeigers vom ersten Teilstring bis hierher merken iPosZeiger2 =
    Anzahl Zeichen zwischen Teilstring1 und Teilstring 2 merken iZeichen =
    String zwischen Teilstring1 und Teilstring2 merken und ausgeben Edit1->Text =

    Ich wäre für Eure Hilfe sehr dankbar. Ich sitze schon eine ganze Weile vor dem Problem und weiß nicht mehr weiter.
    Gerd



  • schau dich mal in der FAQ um besonders der punkt AnsiString..

    und die such ned vergessen

    vielleicht hilft das schon :

    http://www.c-plusplus.net/forum/viewtopic.php?t=39299



  • http://www.cplusplus.com/ref/iostream/istream/seekg.html
    http://www.cplusplus.com/ref/iostream/istream/tellg.html

    sollte dir auch helfen. Wenn du nicht weiterkommst mail mal wo's genau hapert.

    mfG

    robi1806


Anmelden zum Antworten