using Uint8Array instead of Uint16Array

This commit is contained in:
Rodolphe Breard 2012-10-21 22:46:39 +02:00
parent a8a6df51ce
commit 8f25b4c862

View file

@ -3,14 +3,17 @@
// http://updates.html5rocks.com/2012/06/How-to-convert-ArrayBuffer-to-and-from-String // http://updates.html5rocks.com/2012/06/How-to-convert-ArrayBuffer-to-and-from-String
// http://stackoverflow.com/questions/6965107/converting-between-strings-and-arraybuffers // http://stackoverflow.com/questions/6965107/converting-between-strings-and-arraybuffers
// //
// Edited by Rodolphe Breard
// - Using Uint8Array instead of Uint16Array
//
function ab2str(buf) { function ab2str(buf) {
return String.fromCharCode.apply(null, new Uint16Array(buf)); return String.fromCharCode.apply(null, new Uint8Array(buf));
} }
function str2ab(str) { function str2ab(str) {
var buf = new ArrayBuffer(str.length*2); // 2 bytes for each char var buf = new ArrayBuffer(str.length);
var bufView = new Uint16Array(buf); var bufView = new Uint8Array(buf);
for (var i=0, strLen=str.length; i<strLen; i++) { for (var i=0, strLen=str.length; i<strLen; i++) {
bufView[i] = str.charCodeAt(i); bufView[i] = str.charCodeAt(i);
} }