javascript - 获取目录的 HTML 多文件输入(Electon 应用程序)
问题描述
我有这个 HTML 输入字段:
<input
name="folderInput"
type="file"
id="folderInput"
webkitdirectory
directory
multiple
onchange="selectFolder();"
/>
这是一个文件夹输入,您可以在其中选择一个文件夹,代码可以获取文件。
但是当我在函数上获取文件时,它会返回每个文件的完整路径。
实际行为(示例) 如果用户介绍:
- 名为的文件夹
foo
,其中包含一个文件text.txt
- 和一个名为的文件夹
bar
,其中包含一个文件fooboar.txt
代码返回给我这个:
(fullpath)/foo/text.txt
(fullpath)/bar/foobar.txt
我怎么能得到(fullpath)
?
如何获取用户选择的文件夹的路径?
解决方案
您可以通过此输入和 JavaScript 获得的最高层次结构是相对路径中最顶层的文件夹名称- 用户选择的那个。
在您给定的示例中,假定为foo
or bar
。
⚠️ 你不会得到绝对路径(因为这个信息是隐藏的,也是出于隐私/安全原因)。
如何获取路径段
使用字符串属性webkitRelativePath
并拆分子字符串,直到第一次出现 path-separator /
。
也可以看看
- 从输入字段中选择文件夹时获取文件夹名称,已回答问题
- MDN 参考文档
webkitdirectory
输入与示例
推荐阅读
- php - 如何在 WordPress中将 src 赋予标签中的图像
- listview - 为什么ListView必须被MaterialApp包裹?
- javascript - Google 表格 onEdit(e) 类型错误:无法读取属性
- javascript - 使用异步过滤和映射 Promise
- c# - 无法翻译 LINQ 表达式。要么以可翻译的形式重写查询,要么切换到客户端评估 EF Core 3.1
- node.js - 为什么这个 node.js 应用程序由 Heroku 在本地运行,但没有在 Heroku 中加载?
- laravel - 挂载钩子中的错误:“ReferenceError:帖子未在 Vuejs 中定义
- r - R 闪亮:在闪亮的应用程序中添加 Konami 代码
- mysql - maxscale 不拆分选择查询
- python - tensorflow 2.0 中 keras 层行为的解释