代码之家  ›  专栏  ›  技术社区  ›  Hsn

通过对上一个json文件进行过度加权,将其保存在Javascript中

  •  0
  • Hsn  · 技术社区  · 7 年前

    我是JS的初学者,试图生成json格式的文件并通过以下代码保存它

    <script>
        var jsonArr=[];
    //Generating 5 random test data for json array
    for(var i = 0; i < 5; i++) {
        jsonArr.push({
            team: "teamA",
            matchname: "Match1",
            score: "32"
        });  } 
    json_str = JSON.stringify(jsonArr); //stringify json
    
    //Save file function
    saveFile('yourfilename.json', "data:application/json", new Blob([json_str],{type:""}));
    
    function saveFile (name, type, data) {
        if (data != null && navigator.msSaveBlob)
            return navigator.msSaveBlob(new Blob([data], { type: type }), name);
    
        var a = $("<a style='display: none;'/>");
        var url = window.URL.createObjectURL(new Blob([data], {type: type}));
        a.attr("href", url);
        a.attr("download", name);
        $("body").append(a);
        a[0].click();
        setTimeout(function(){  // fixes firefox html removal bug
            window.URL.revokeObjectURL(url);
            a.remove();
        }, 500);  
    }
    
    </script>
    

    这段代码正在工作,但我想将此文件保存到一个特定的目录,覆盖以前保存的文件。如果有人能帮忙? 谢谢

    1 回复  |  直到 7 年前
        1
  •  1
  •   Siggy    7 年前

    使用Javascript无法访问客户端的文件系统。只能使用下载对话框提示用户,或强制下载到默认下载目录。