我正在尝试使用 JNA 将一些 C# 代码转换为 java,但我被困在最后一个函数上。
在 C# 中,它被称为
Marshal.Copy
这是我到目前为止尝试过的
byte[] string = new byte[tSecDec.SECItemLen];
Pointer ptr = new Memory(string.length);
ptr.read(tSecDec.SECItemData, string, 0, tSecDec.SECItemLen);
System.out.println(Native.toString(string));
但它没有用,因为我收到了这个错误
Exception in thread "main" java.lang.IndexOutOfBoundsException: Bounds exceeds available space : size=7, offset=419439024
at com.sun.jna.Memory.boundsCheck(Memory.java:186)
at com.sun.jna.Memory.read(Memory.java:203)