除了读写单个文件,File System API 还能让你直接操作本地目录,实现复杂的文件结构扫描和工程化管理。
支持读取、创建、删除以及流式写入本地文件。
递归遍历文件夹,获取目录下所有子项,构建 Web 侧的文件树。
在获得用户许可后,可以跨会话保留对文件夹的访问能力。
选择一个文件夹以递归列出内容
浏览器版本过低,不支持目录访问功能。
允许用户选择一个文件夹,并返回一个 FileSystemDirectoryHandle。该句柄是访问整个目录树的入口。
你可以通过 getDirectoryHandle() 或 getFileHandle() 在已知路径下精准获取特定的子项。
这些方法还支持参数 { create: true },这意味着你可以直接在 Web 端像原生程序一样生成复杂的目录结构。
浏览器不允许 Web 访问系统级敏感目录(如 C:/Windows 或库文件),确保即使恶意站点获得了权限,也无法破坏操作系统。
用户授予的权限通常在会话结束(关闭标签页)后过期。但利用 IndexedDB 存储句柄,可以在下次访问时请求“恢复访问”,提升用户体验。