2013-04-29 65 views
1

我有AS5中ByteArray的聲音數據。需要將其轉換爲JavaScript,後者將發送回AS3進行回放。ByteArray通過JS和AS3

我試圖通過readUTFBytes和writeUTFBytes將其轉換爲字符串。但不工作。 ExternalInterface也不允許除Object外的其他參數傳遞。他們有這樣的問題嗎?

請幫助我如何 在此先感謝

回答

0

的ByteArray UTF功能是處理UTF編碼的文本JS和AS3(兩個方向)之間傳輸的ByteArray。您的聲音數據不是UTF編碼的。請參閱下面的對象,並在AS3的ByteArray之間進行轉換的一個例子...

// convert from a ByteArray to an Object: 
ba.position = 0; 
var obj:Object = ba.readObject(); 

// convert from Object to ByteArray: 
var bytes:ByteArray = new ByteArray(); 
bytes.writeObject(obj); 

不過,我不認爲這是真的,ExternalInterface的將只允許您傳遞對象。如果是這樣的話,那麼找到一個Base64類(有幾個可用於AS3)可能是最容易的,並且在將ByteArray傳遞給JS之前對其進行base64編碼,並在接收到Base64時對其進行解碼。

+0

感謝您的回覆。對象轉換不起作用。但是後來的Base64確實有所幫助。其工作現在完美。 – abduIntegral 2013-04-30 05:30:01