Autor Thema: 16-Bit Character String in 8-Bit Character String umwandeln  (Gelesen 737 mal)

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
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?
Gruß,
  __________
  _/_
  /lachmann

Offline ARM9

  • Junior Mitglied
  • **
  • Beiträge: 62
Antw:16-Bit Character String in 8-Bit Character String umwandeln
« Antwort #1 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();

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Antw:16-Bit Character String in 8-Bit Character String umwandeln
« Antwort #2 am: 30.01.24 - 20:56:16 »
OK, danke für den Tipp, ARM9. Ich schaue mir das mal als Alternative an.
Gruß,
  __________
  _/_
  /lachmann

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz