概述OPFS 适合后台读写,FSA 适合与用户交互的导入与导出。本文组合两者以实现可靠的文件流转。导入到 OPFSasync function importByPicker(toPath) {

const [handle] = await window.showOpenFilePicker({ multiple: false });

const file = await handle.getFile();

const root = await navigator.storage.getDirectory();

const fh = await root.getFileHandle(toPath, { create: true });

const w = await fh.createWritable();

await w.write(await file.arrayBuffer());

await w.close();

}

从 OPFS 导出到用户目录async function exportToUserDir(fromPath) {

const root = await navigator.storage.getDirectory();

const fh = await root.getFileHandle(fromPath);

const file = await fh.getFile();

const save = await window.showSaveFilePicker({ suggestedName: fromPath.split('/').pop() });

const ws = await save.createWritable();

await ws.write(await file.arrayBuffer());

await ws.close();

}

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部