Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

streams verstehen

Empfohlene Antworten

Veröffentlicht

Hallo,

ich hatte mich mich bisher noch nie richtig mit dem "Stream-Konzept" C++ beschäftigt. Bisher habe ich mir die Daten von der Tastatur oder dem Dialog geholt und auf den Monitor/View geschrieben. Auf den datenträger habe ich Daten nur geladen und gespeichert.

Nun wollte ich für ein Projekt unter ausschliesslicher Nutzung der MFC einen HTML-ähnlichen Eintrag, der in einer Datei vorliegt, verarbeiten:

<satz nr=1 > Text </satz>

Das Programm soll hier den "Text" in einem CStringArray satz unter der Nr 1 speichern.

Mein Vorgehen wäre(Datei ist geöffnet), um den ersten "Tag" zu laden :


char c;

CStringList arglist;

CString wort;

CFile file;

  do

  {

     // Werte zurücksetzen

     wort="";  

     zeichen=0x20;

     do

     {

        file.read(c,1)

        wort+=c;

     }while(c!=' ') // Lese Wort

     arglist.append(wort);

  }while(wort!='>');

Der Code soll eine StringListe wie diese erzeugen:

1. <satz

2. nr=1

3. >

Das würde mir schon zur Weiterverarbeitung reichen, weil ich dann die Argumente prüfen und aus dem zweiten Eintrag die Satznummer abtrennen kann.

Nun wird immer nur ein Zeichen eingelesen, was bei längeren Dateien sicher nicht sehr effektiv ist.

Hat jemand eine Idee oder enen Link, wie ich das effizienter lösen kann?

Danke

MfG

André

tach andie,

habe bisher noch nicht in c# programmiert, aber wenn es in c++ schon möglich ist ganze wörter einzulesen, dürfte es da auch was in c# geben.

logischerweise wäre es das sinnvollste den text iterativ nach dem string "nr=" zu durchsuchen und mit dem definierten abstand zwischen dem gesuchten string und dem satz zu springen um eben diesen auszulesen.

da c# eine .net sprache ist, müsstest das z.b. mit der methode substring() gehen. alternativ könntest du was anderes mit readline() probieren (dürfte recht selbsterklärend sein :-) )

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.