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

Ergebnis 1 bis 4 von 4

Thema: String bearbeiten

  1. #1
    Registriert seit
    28.06.2012
    Beiträge
    42
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    ich lese mit dem SFB52 die Seriennummer einer Baugruppe aus. Das sind 15 Bytes, davon wandle ich jedes BYTE in einen CHAR um und setze
    diese mit Hilfe des CONCAT-Befehls zu einem STRING zusammen. Das funktioniert soweit auch, nur reserviert das Programm die ersten 2 BYTE's vor meinem eigentlichen STRING laut Step 7 Hilfe für einen sogenannten "Kopf". Da ich den STRING nur mit der Seriennummer im Programm weiterverwenden möchte, muss der "Kopf" abgeschnitten werden. Wie mache ich das?...ich habs auch schon mit RIGHT(IN:=...,L:=...) bzw. LEFT(IN:=...,L:=...) versucht, das hat leider nicht funktioniert. Vielen Dank!
    Zitieren Zitieren String bearbeiten  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.268
    Danke
    537
    Erhielt 2.708 Danke für 1.957 Beiträge

    Standard

    Wenn du in Step7 einen String verwenden willst, dann sind nun mal die 2 Kopfbyte da, die gehören in Step7 zum String. Wenn du ohne diesen Kopf arbeiten willst, dann hast du 15 Byte, die du nutzen kannst. Im einfachsten Fall kopierst du die 15 Byte in ein Array of Char mit der Länge 15 und arbeitest dann mit diesem Array. Left und Right können ja den Kopf nicht wegschneiden, denn es sind Stringfunktionen und die arbeiten nur mit Step7-Strings, also mit Kopf.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    Registriert seit
    17.10.2009
    Beiträge
    37
    Danke
    4
    Erhielt 11 Danke für 11 Beiträge

    Standard

    Hallo SCLNewbie, wenn Du in SCL mit einem String arbeitest, was dort noch relativ kompfortabel geht, dann merkst Du diese 2 Kopfbyte doch eigentlich gar nicht. Zumindest solange Du mit Funktionen arbeitest, die für Strings vorgesehen sind. Willst Du es irgendwo anders hin übergeben, wo diese Kopfbytes doch stören, dann kommt das ARRAY OF CHAR in Betracht. Dann brauchst Du natürlich nicht erst Deine Bytes in Char wandeln und in String zusammenfügen, um sie danch wieder in ein Array zu kopieren, sondern kannst sie auch gleich in das Array einlesen.

  4. #4
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    .
    Quick-and-dirty-Solution:
    Einfach deine 15 Bytes aus dem String (2+15Byte=17Byte) ab dem 3.Byte rauskopieren, die ersten beiden Bytes (Kopf) bleiben, wo sie sind.
    kind regards
    SoftMachine

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 16.02.2011, 11:32
  2. String bearbeiten
    Von egor im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 28.07.2010, 11:19
  3. Antworten: 13
    Letzter Beitrag: 24.09.2009, 12:54
  4. Int na. String und String zusammensetzen
    Von bastler im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 09.11.2008, 20:29
  5. Ein String kopieren in einen anderen String
    Von CanYouHelpMe im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 25.09.2008, 17:21

Lesezeichen

Berechtigungen

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