Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 7 von 7

Thema: Länge eines Strings mit mehr als 255 Zeichen

  1. #1
    Registriert seit
    08.04.2013
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin moin,
    ich habe hier ein TwinCat System, mit dem ich einen String in eine Datei schreiben möchte, der bis zu 1020 Zeichen lang ist.
    Programmiert wird in ST. Die Funktion FB_FileWrite benötigt zum Schreiben die Länge des zu schreibenden Strings.
    Die Funktion LEN kann aber nur die Länge eines Strings herausgeben, der maximal 255 Zeichen lang ist.

    Kennt jemand zufällig eine Möglichkeit die genaue Länge eines längeren Strings zu ermitteln?
    Müsste ich mir eine eigene LEN Funktion schreiben, die mit längeren Strings zurechtkommt?
    Und wenn ja, wie macht man das am Besten?

    Wenn das nicht geht, müsste ich den String in mehrere 255 Zeichen lange Strings aufteilen, was aber relativ aufwendig wäre, weshalb ich das zu vermeiden versuche.

    Vielleicht hat jemand ja ein Idee.

    Vielen Dank für eventuelle Antworten und schöne Grüße,
    Hauke.
    Zitieren Zitieren Länge eines Strings mit mehr als 255 Zeichen  

  2. #2
    Registriert seit
    24.02.2009
    Beiträge
    1.242
    Danke
    23
    Erhielt 276 Danke für 235 Beiträge

    Standard

    Du könntest mit einem Pointer (To Byte) den String in einer Schleife (repeat) Zeichen für Zeichen durchlaufen und dabei einen Zähler hochzählen. Wenn der Pointer auf eine 0 zeigt, ist der String zu Ende. Der Zählerwert - 1 ist dann die Länge des Strings.

  3. #3
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    http://www.sps-forum.de/beckhoff-cod...html#post98204

    Concat ist zwar deutlich mehr aber der von MasterOhh beschriebene eil ist auch da drin.
    If you open your Mind too much, your Brain will fall out.

  4. #4
    haukehansen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2013
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok vielen Dank für die Antworten.
    Wenn ich morgen wieder Arbeite, versuche ich das mal zu implementieren.
    Sollte ja nicht so das Problem darstellen.

    Schöne Grüße

  5. #5
    Registriert seit
    24.04.2008
    Ort
    Lübeck
    Beiträge
    324
    Danke
    8
    Erhielt 63 Danke für 62 Beiträge

    Standard

    So sollte es funktionieren:

    Code:
    pString := ADR(sString);
    nLen := 0;
    nSize := SIZEOF(sString);
    
    WHILE nLen <= nSize AND pString^ <> 0 DO
        nLen := nLen + 1;
        pString := pString + 1;
    END_WHILE
    
    F_StrLen := nLen;
    Geändert von Neals (19.05.2014 um 17:09 Uhr)

  6. Folgender Benutzer sagt Danke zu Neals für den nützlichen Beitrag:

    haukehansen (20.05.2014)

  7. #6
    haukehansen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2013
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ah super, vielen Dank.
    Ich werde das morgen gleich mal ausprobieren.

  8. #7
    haukehansen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2013
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja das funktioniert gut!
    Vielen Dank für die Hilfe und einen schönen Tag noch.

Ähnliche Themen

  1. Strings länger als 255
    Von Thomas_v2.1 im Forum CODESYS und IEC61131
    Antworten: 8
    Letzter Beitrag: 18.12.2012, 14:59
  2. Länge eines String mit der LEN-Funktion auslesen
    Von baggerandy im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 10.04.2009, 16:13
  3. Antworten: 0
    Letzter Beitrag: 18.03.2008, 12:53
  4. [Frage] - String mit mehr als 254 Zeichen?
    Von marcengbarth im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 27.07.2007, 10:39
  5. Antworten: 3
    Letzter Beitrag: 02.11.2004, 13:24

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •