js file 相关操作

这篇文章介绍了使用JavaScript进行文件操作的方法,包括创建文件、下载文件以及获取文件内容。通过`createFile`函数创建Blob对象并生成URL,使用`down_file`实现文件下载,借助`getFileCtn`读取文件内容。示例中展示了如何创建HTML文件。
摘要由CSDN通过智能技术生成

js file 相关操作

/** 下载文件
 * @param {u} 文件路径
 * @param {n} 文件名称及类型
 */
const down_file = (u,n) => {
    const dom_a = document.createElement('a');
    dom_a.setAttribute('href',u);
    dom_a.setAttribute('download',n);
    // dom_a.innerText = 'download'+n;
    // document.body.appendChild(dom_a);
    dom_a.click(); // Automatic download
}


/** 创建文件
 * @param {c} 文件内容
 * @param {t} 文件类型
 * @return {u} 文件路径
 */
const createFile = (c,t) => {
    const f = new Blob([c],{type:t});
    const u = URL.createObjectURL(f);
    return u
}


/** 获取文件内容
 * @param {a} 要解析的文件
 * @return {obj} 带有解析结果的promise对象
 */
const getFileCtn = (a) => {
    if(!a) return;
    return new Promise((resolve, reject)=>{
        let fileReader = new FileReader();
        fileReader.readAsText(a,'UTF-8');
        fileReader.onload =  async function (r) {
            await resolve(r.target.result)
        };
    })
}



// eg: 创建一个html文件
const createHtml = (c) => {
const f = new Blob([`<!DOCTYPE html><head><title>【无标题】</title></head><body>${c}</body></html>`],{type:'plain/html'});
    const u = URL.createObjectURL(f);
    return u;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值