Angenommen, ich habe eine Sequenz von Bytes von C oder einer anderen nativen Plattform, die auf dem JVM als Java.lang.foreign.Memorysegment und in int (oder was auch immer) ausgedrückt wird. Diese Byte-Sequenz ist nicht null terminiert. MemorySegment in dieses Byte [] und
konvertieren dieses Byte [] in eine Zeichenfolge :
Code: Select all
byte[] bytes = new byte[length];
MemorySegment.copy(segment, JAVA_BYTE, offset, bytes, 0, length);
return new String(bytes, charset);
Angesichts der Prahlerei von Oracle über die Effizienz von FFM bei der Konvertierung von Zeichenfolgen würde ich hoffen, dass es eine Möglichkeit gibt, diese Kopie zu vermeiden, aber vielleicht bin ich falsch.>