Tag: arraybuffer

将base64string转换为ArrayBuffer

我需要将base64编码string转换为ArrayBuffer。 base64string是用户input的,它们将被复制并粘贴到电子邮件中,所以当页面加载时它们不在那里。 我想这样做在JavaScript中,如果可能的话,没有做一个Ajax调用服务器。 我发现这些链接有趣,但他们没有帮助我: ArrayBuffer以base64编码的string 这是相反的转换,从ArrayBuffer到base64,而不是相反 http://jsperf.com/json-vs-base64/2 这看起来不错,但我不知道如何使用代码。 有一个简单的(也许是本地)的方式来做转换? 谢谢

Javascripttypes的数组和字节顺序

我正在使用WebGL来渲染二进制编码的网格文件。 二进制文件是以big-endian格式写出来的(我可以通过在hex编辑器中打开文件或使用fiddler查看networkingstream量来validation这一点)。 当我尝试使用Float32Array或Int32Array读取二进制响应时,二进制被解释为little-endian,我的值是错误的: // Interpret first 32bits in buffer as an int var wrongValue = new Int32Array(binaryArrayBuffer)[0]; 我找不到在http://www.khronos.org/registry/typedarray/specs/latest/中的任何types数组的默认sorting的引用,所以我想知道什么是交易? 我应该假设所有的二进制数据在使用types数组读取时应该是小尾数? 为了解决这个问题,我可以使用一个DataView对象(在前面的链接中讨论)并且调用: // Interpret first 32bits in buffer as an int var correctValue = new DataView(binaryArrayBuffer).getInt32(0); DataView函数(如“getInt32”)默认读取big-endian值。 (注意:我已经使用Google Chrome 15和Firefox 8进行testing,它们的行为方式都是一样的)

如何去从Blob到ArrayBuffer

我正在研究Blob,我注意到当你有一个ArrayBuffer时,你可以很容易地将它转换成一个Blob,如下所示: var dataView = new DataView(arrayBuffer); var blob = new Blob([dataView], { type: mimeString }); 我现在的问题是,是否有可能从一个Blob到一个ArrayBuffer?

将二进制NodeJS缓冲区转换为JavaScript ArrayBuffer

如何将一个NodeJS二进制缓冲区转换为JavaScript ArrayBuffer?

UTF-8 ArrayBuffer和String之间的转换

我有一个ArrayBuffer ,其中包含使用UTF-8编码的string,我无法find将此类ArrayBuffer转换为JS String (我知道使用UTF-16编码)的标准方法。 我已经在很多地方看到了这个代码,但是我没有看到它是如何处理比1字节长的任何UTF-8代码点的。 return String.fromCharCode.apply(null, new Uint8Array(data)); 同样,我找不到从String转换为UTF-8编码的ArrayBuffer的标准方式。