我正在尝试使用以下代码使用文件系统 API 将文件写入卷:
const fileHandle = await this.directoryHandle?.getFileHandle(
entry.filename,
{
create: true,
}
);
... write file with writable
它可以很好地处理示例文件(例如
test.txt
),但不适用于像 test/test.txt
这样的文件,这些文件应该写入新目录。我收到以下错误:
Failed to execute 'getFileHandle' on 'FileSystemDirectoryHandle': Name is not allowed
如何使用文件系统 API 在目录中创建文件?我不想为每个新文件夹创建一个新的目录句柄。
getDirectoryHandle()
创建子目录,然后向其中写入文件:
dir = await showDirectoryPicker({ mode: "readwrite" });
subdir = await dir.getDirectoryHandle("subdir", { create: true });
file = await subdir.getFileHandle("myfile.txt", { create: true });
我不想为每个新文件夹创建一个新的目录句柄
这显然是不可能的。
您只能通过其直接父目录的句柄写入文件,而不能跨具有
subDir/myfile.txt
等路径的多个目录。