zoukankan      html  css  js  c++  java
  • HTML5 TypeArray和Unicode 字符之间转换

    1.Uint32Array测试成功

        // Uint32Array 测试成功
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 4);
            var bufView = new Uint32Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            var bufView = new Uint32Array([24352, 19977, 20016]); //[24352, 19977, 20016]
            console.info(bufView);
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果为空
        }
        abTostr();

    2.Uint16Array测试成功

        //Uint16Array 测试成功
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 2);
            var bufView = new Uint16Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            //方式1,无效
            //var buf = new ArrayBuffer([24352, 19977, 20016]);
            //var bufView = new Uint16Array(buf); //获得的结果为空
            //方式2,有效
            var bufView = new Uint16Array([24352, 19977, 20016]); //[24352, 19977, 20016]
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果 '张三丰'
        }
        abTostr();

    3.Uint8Array 测试失败

            //Uint8Array 测试失败
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 2);
            var bufView = new Uint8Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            var buf = new ArrayBuffer([24352, 19977, 20016]);
            // var bufView = new Uint16Array(buf); //获得的结果为空
            var bufView = new Uint8Array([32, 9, 48]); //[24352, 19977, 20016]
            console.info(bufView);
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果为空
        }
        abTostr();
  • 相关阅读:
    枚举Android系统的进程,任务和服务的信息
    android Gallery可循环显示图片
    android获取正在运行的进程
    Android Textview控件
    android中使用代码混淆出现Conversion to Dalvik format failed with error 1错误的解决办法
    Android断点续传
    vim常用快捷键
    V型开发过程
    CentOS 5.5 中文乱码问题解决方案
    使用yum来安装或卸载CentOS图形界面包 [linux技术]
  • 原文地址:https://www.cnblogs.com/tianma3798/p/5835392.html
Copyright © 2011-2022 走看看