JavaScript在浏览器中把文本保存为文件的方法


JavaScript在浏览器中把文本保存为文件的方法

经过测试第二种方法可以保存更多的文本不至于卡死

 

var saveTextAsFile1 = function (text, fileName, success, error) {
    var data = text;
    if (!(text instanceof Array)) {
        data = [text];
    }
    var file = new File(data, fileName);
    var reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = function (r) {
        var url = reader.result;
        downLoadFile(url, fileName,
            function () {
                success && success();
            }, function () {
                error && error();
            });
    };


}

/**
 * 下载文件
 * @param {string, Array} text 
 * @param {string} fileName 
 * @param {function} success 
 * @param {function} error 
 */
var saveTextAsFile = function (text, fileName, success, error) {
    var data = text;
    if (!(text instanceof Array)) {
        data = [text];
    }
    var urlObject = window.URL || window.webkitURL || window;
    var export_blob = new Blob(data);
    var url = urlObject.createObjectURL(export_blob);
    downLoadFile(url, fileName,
        function () {
            success && success();
        }, function () {
            error && error();
        });
}

  

    exportExcel() {
      exportExcel().then(res => {
        const blob = new Blob([res], {
          type: 'application/octet-stream;charset=utf-8',
          name: 'sss.xls'
        })

        const url = URL.createObjectURL(blob)
        const a = document.createElement('a')
        a.href = url
        a.download = '资源目录.xlsx'
        a.click()
      })
    },

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM