Hallo!
Ich will ein Bytearray in einen String verwandeln, um ihn über ein Interface verschicken zu können.
Dafür benutze ich:
Im Bytearray können Werte zwischen 0 und 255 stehen. Im Bereich 128 bis 159 übersetzt diese Funktion falsch, d.h. es werden falsche Werte in den String geschrieben, z.B. bei byte 128 steht im string 63.
In der Unicodetabelle stehen die Werte 128 bis 159 für Steuerzeichen. Wie bekomme ich VB dazu, nur die ByteWerte zu übersetzen, ohne sich um die Steuerung zu kümmern?
Weiß jemand, vielleicht eine andere Art den String zusammenzustellen?
Ich habe schon den Stringbuilder probiert, aber beim austauschen einzelner bytes ( Änderung der Steuerbefehle ) kommt eine Fehlermeldung wegen Verlassen des Parameterbereiches.
Der Befehl hier:
Gruß, Matthias
P.S. Die google-Suche war ohne Erfolg und sehr ausführlich!
Ich will ein Bytearray in einen String verwandeln, um ihn über ein Interface verschicken zu können.
Dafür benutze ich:
Code:
string=strconv(system.text.unicodeEncoding.unicode.getstring(Bytearray),0)
Im Bytearray können Werte zwischen 0 und 255 stehen. Im Bereich 128 bis 159 übersetzt diese Funktion falsch, d.h. es werden falsche Werte in den String geschrieben, z.B. bei byte 128 steht im string 63.
In der Unicodetabelle stehen die Werte 128 bis 159 für Steuerzeichen. Wie bekomme ich VB dazu, nur die ByteWerte zu übersetzen, ohne sich um die Steuerung zu kümmern?
Weiß jemand, vielleicht eine andere Art den String zusammenzustellen?
Ich habe schon den Stringbuilder probiert, aber beim austauschen einzelner bytes ( Änderung der Steuerbefehle ) kommt eine Fehlermeldung wegen Verlassen des Parameterbereiches.
Der Befehl hier:
Code:
dim sb as new system.text.stringbuilder
sb.capacity(100)
sb.append("0",100)
und bei Änderung der Steuerwerte:
sb.replace(alterwert( as char ),neuerwert ( as char ), stelleimarray( as integer ),1)
string=sb.tostring
P.S. Die google-Suche war ohne Erfolg und sehr ausführlich!
Zuletzt bearbeitet: