2016-01-15 57 views

回答

1

看起來我正在以這種錯誤的方式前進。將它轉換爲Uint8Array更有意義,因爲我在中發送的是字節數組。

我創建了以下功能:

function byteToUint8Array(byteArray) { 
    var uint8Array = new Uint8Array(byteArray.length); 
    for(var i = 0; i < uint8Array.length; i++) { 
     uint8Array[i] = byteArray[i]; 
    } 

    return uint8Array; 
} 

這將轉換字節數組成Uint8Array(因此實際上byteArray類型byte[]的是)。

0

我覺得你說得對使用Uint8Array,但是這個代碼可能是最好:

function byteToUint8Array(byteArray) { 
    var uint8Array = new Uint8Array(byteArray.length); 
    uint8Array.set(Java.from(byteArray)); 
    return uint8Array; 
} 

此外,如果你真的需要一個ArrayBuffer可以使用uint8Array.buffer

+0

不幸的是,我不能夠使用'Java.from',因爲我處於Nashorn的純JavaScript環境中。但你的答案仍然有幫助。 –