• js导入excel


              /* FileReader共有4种读取方法:

                 1.readAsArrayBuffer(file):将文件读取为ArrayBuffer。

                 2.readAsBinaryString(file):将文件读取为二进制字符串

                 3.readAsDataURL(file):将文件读取为Data URL

                 4.readAsText(file, [encoding]):将文件读取为文本,encoding缺省值为'UTF-8'

               */


    <input type="file" name="myFile" id="myFile" onchange="importf(this)" value="EXCEL导入" />
            var wb;//读取完成的数据
            var rABS = true; //是否将文件读取为二进制字符串
            function importf(obj) {//导入
                if (!obj.files) {
                    return;
                }
                var f = obj.files[0];
                var reader = new FileReader();
                reader.onload = function(e) {
                    var data = e.target.result;
                    if (rABS) {
                        wb = XLSX.read(btoa(fixdata(data)), {//手动转化
                            type : 'base64'
                        });
                    } else {
                        wb = XLSX.read(data, {
                            type : 'binary'
                        });
                    }    

                        //wb.SheetNames[0]是获取Sheets中第一个Sheet的名字

                     //wb.Sheets[Shee名]获取第一个Sheet的数据       

    var property=JSON.stringify( XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]) ); //转成json字符串
                    var url = "QCommunityInfoService.selectFriendsImage"; //方法
                    var param = {};
                    param.property=property;
                    AE.ServiceEx(url, param, function(obj) {
                         if(obj.code==0){
                             f_success_alert();
                         }else{
                             f_fail_alert(obj.text);
                         }
                    });
                
                };
                if (rABS) {
                    reader.readAsArrayBuffer(f);
                } else {
                    reader.readAsBinaryString(f);
                }        
    
            }
            function fixdata(data) { //文件流转BinaryString
                var o = "", l = 0, w = 10240;
                for (; l < data.byteLength / w; ++l)
                    o += String.fromCharCode.apply(null, new Uint8Array(data
                            .slice(l * w, l * w + w)));
                o += String.fromCharCode.apply(null, new Uint8Array(data
                        .slice(l * w)));
                return o;
            }
    public void selectFriendsImage(Map<String, Object> param){
    
            String property=String.valueOf(param.get("property"));
            JSONArray json = JSONArray.fromObject(property);
            for(int i=0;i<json.size();i++){
                    JSONObject job = json.getJSONObject(i);
         
                    QCommunityInfo info=new QCommunityInfo();
    info.setCommunityName(job.
    get("列名").toString());

    communityInfoMapper.insertSelective(info); } }
  • 相关阅读:
    linux命令
    常用正则表达式总结
    List集合对象根据字段排序
    IO字 节流/字符流 读取/写入文件
    Jquery广告浮动效果小案例
    拿到添加对象的id号方法
    Jquery省市区三级联动案例
    JAVA集合迭代遍历和特性介绍
    Listener监听器使用小案例
    java中用过滤器解决字符编码问题
  • 原文地址:https://www.cnblogs.com/jyy599/p/12066753.html
Copyright © 2020-2023  润新知