之前用纯JS编码和解码字符串,因为字符串大小为2M多,所以效率相当慢,得两三秒。
之后改为了用windos api编码解码,效率一下提高,基本没有延迟的感觉。
metro下的Javascript base64编码:
var Base64 = {
//编码
encode: function (input) {
var output = "";
var buffer = Windows.Security.Cryptography.CryptographicBuffer.convertStringToBinary(input,"utf8");//字符串转缓存
output = Windows.Security.Cryptography.CryptographicBuffer.encodeToBase64String(buffer);//将缓存编码,返回编码后的字符串
return output;
},
//解码
decode: function (input) {
var output = "";
var buffer = Windows.Security.Cryptography.CryptographicBuffer.decodeFromBase64String(input);//将base64解码为缓存
output = Windows.Security.Cryptography.CryptographicBuffer.convertBinaryToString("utf8", buffer);//将缓存转为字符串
return output;
}
}