readString

[ Funktion ]

public readString(length?: number): string;

Liest Bytes und interpretiert diese als UTF-8 kodierte Unicode-Codepunkte. Bytes werden gelesen, bis ein Byte mit dem Wert Null gelesen wurde, die Anzahl der gelesenen Bytes den Wert des Parameters length erreicht oder das Ende der Daten erreicht wird. Der Lesezeiger wird, falls der optionale Parameter length gesetzt wurde, um den Wert von length weiter gesetzt, andernfalls wird der Lesezeiger um die tatsächliche Anzahl der gelesenen Bytes weiter gesetzt, also entweder hinter die Position des Null-Bytes oder an das Ende der Daten.

Beim Lesen von Strings aus der SPS muss beachtet werden, dass TwinCAT ein Byte mehr als die angegeben Stringlänge reserviert, um Platz für ein abschließendes Null-Byte zu haben. Wenn also ein String gelesen werden soll, der in der SPS mit einer Länge n deklariert wurde, muss dieser mit der Länge n+1 gelesen werden.

Parameter

Name

Typ

Beschreibung

length [ Optional ]

number

Die Länge des auszulesenden Strings. Wenn ein Byte mit dem Wert Null gelesen wird bevor die angegebene Länge erreicht wird, wird der Lesevorgang beendet, der Lesezeiger wird aber trotzdem um die angegebene Länge weiter gesetzt.

Rückgabewert

Typ

Beschreibung

string

Der ausgelesene String

Beispiel – JavaScript

// Contains a string, followed by seven null bytes, followed by another string
var reader = new TcHmi.Base64BinaryReader('SGVsbG8sIFdvcmxkIQAAAAAAAADkuK3mlocgZXNwYcOxb2wg4KS54KS/4KSo4KWN4KSm4KWAINin2YTYudix2KjZitipINGA0YPRgdGB0LrQuNC5IOaXpeacrOiqng==');
// Reads the first 20 chars and saves the read position
var result1 = reader.readString(20); // 'Hello, World!'
// Reads the rest
var result2 = reader.readString(); // '中文 español हिन्दी العربية русский 日本語'
readString 1:

Verfügbar ab Version 1.10