zoukankan      html  css  js  c++  java
  • 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); } }
  • 相关阅读:
    Python入门-函数进阶
    Python入门-初始函数
    Leetcode300. Longest Increasing Subsequence最长上升子序列
    Leetcode139. Word Break单词拆分
    Leetcode279. Perfect Squares完全平方数
    Leetcode319. Bulb Switcher灯泡开关
    Leetcode322. Coin Change零钱兑换
    二叉树三种遍历两种方法(递归和迭代)
    Leetcode145. Binary Tree Postorder Traversal二叉树的后序遍历
    Leetcode515. Find Largest Value in Each Tree Row在每个树行中找最大值
  • 原文地址:https://www.cnblogs.com/jyy599/p/12066753.html
Copyright © 2011-2022 走看看