zoukankan      html  css  js  c++  java
  • js读取本地磁盘文本文件并保存为JSON数据(有格式的文本)

    主要的代码是红色区域,HTML5获取本地文件对象并进行操作
    //给上传按钮添加点击事件
        $(".myappTXTUploadBtn").click(function(){
    
            var filepath = $(".uploadFace").val().trim();
            if(filepath == ""){
                showBlackPage("请您选择要上传的txt文件","请您选择要上传的txt文件");
                return;
            }
            var last = filepath.substr(filepath.lastIndexOf(".")+1);
            if(last == "txt"){
                var file = $(".uploadFace")[0].files[0];
                var reader = new FileReader();
                reader.readAsText(file, "GB2312");
                var urlData;
                reader.onload = function (e) {
                    urlData = this.result;
                    var dataarray = urlData.split("
    ");
                    var objs = "[";
                    var index = 1;
                    for(var i=0;i<dataarray.length;i++){
                        var data = dataarray[i].trim();
                        if(data == ""){
                            continue;
                        }else{
                            var namestart = data.indexOf("【");
                            var nameend = data.lastIndexOf("】");
                            var str = "";
                            if(namestart != -1 && nameend != -1){
                                var obj = {};
                                obj.replytxt = data.substr(namestart+1,nameend-1);
                                str += data.substr(namestart+1,nameend-1);
                                var imgstart = data.indexOf("〖");
                                var imgend = data.lastIndexOf("〗");
                                if(imgstart != -1 && imgend != -1){
                                    obj.receiveimg = data.substr(imgstart+1,imgend-nameend-2);
                                    str += "
    "+data.substr(imgstart+1,imgend-nameend-2);
                                    obj.receivetxt = data.substr(imgend+1);
                                    str += "
    "+data.substr(imgend+1);
                                }else{
                                    obj.receivetxt = data.substr(nameend+1);
                                    str += "
    "+data.substr(nameend+1);
                                }
                                obj.myappid = index;
                                index++;
                                objs += JSON.stringify(obj)+",";
                            }else{
                                continue;
                            }
                        }
                    }
                    objs = objs.substr(0,objs.lastIndexOf(","));
                    objs += "]"
                    if(weixinid != ""){
                        $.ajax({
                            type:"POST",
                            url:"/api2/app/myappadd?",
                            data:{
                                weixinid:weixinid,
                                "myapp":objs
                            },
                            success:function(serverData){
                                showBlackPage(serverData["提示信息"],serverData["提示信息"]);
                            }
                        });
                    }else{
                        alert("您还没有绑定微信公众账号");
                    }
                }
            }else{
                alert("您上传的不是txt文件");
            }
        });


     

  • 相关阅读:
    (Good Bye 2019) Codeforces 1270B Interesting Subarray
    (Good Bye 2019) Codeforces 1270A Card Game
    Codeforces 1283D Christmas Trees(BFS)
    Codeforces 1283C Friends and Gifts
    Codeforces 1283B Candies Division
    1095 Cars on Campus (30)
    1080 Graduate Admission (30)
    1099 Build A Binary Search Tree (30)
    1018 Public Bike Management (30)
    1087 All Roads Lead to Rome (30)
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3294048.html
Copyright © 2011-2022 走看看