Das Notes Forum

HCL Notes / Domino / Diverses => Entwicklung => Thema gestartet von: Flachmann am 04.10.23 - 13:59:25

Titel: 16-Bit Character String in 8-Bit Character String umwandeln
Beitrag von: Flachmann am 04.10.23 - 13:59:25
Hallo,

ich brauche mal wieder Schützenhilfe. Ich will einen LotusScript-String (also 16-bit Chars) in einen ASCII-String (8-bit Chars) umwandeln. Genau genommen soll an einen API-Call einen echte ASCII-String gesendet werden.

Mein Input hat 79 Zeichen, LenB() liefert demnach 158. Gibt es eine Möglichkeit das brauchbar umzuwandeln? Also im Prinzip ein Array of Byte, das dann aber als String. Bin nicht sicher, ob klar ist, was ich meine.   :(

Ich hatte mich an NotesStream versucht, wo man ja den gewünschten Character Set mitgeben kann, aber so recht bekomme ich das nicht hin. Außerdem will ich ja keine Datei erzeugen, sondern den String im Memory halten und als Pointer an eine Routine übergeben.

Oder ist das gar nicht möglich?
Titel: Antw:16-Bit Character String in 8-Bit Character String umwandeln
Beitrag von: ARM9 am 30.01.24 - 16:13:35
ich glaub das LS ist nicht so leistungsfähig. Viel besser ist Java.
In Java gibt es eine String Methode getBytes() . Dann stehen in data[] die Werte (Hexa)  0x30, 0x31, 0x32, 0x33, 0x34, 0x0A drin. Schau mal in die ASCII Tabelle.

String s = "1234\n";
byte data[] = s.getBytes();
Titel: Antw:16-Bit Character String in 8-Bit Character String umwandeln
Beitrag von: Flachmann am 30.01.24 - 20:56:16
OK, danke für den Tipp, ARM9. Ich schaue mir das mal als Alternative an.