【发布时间】:2014-04-10 14:32:54
【问题描述】:
我在 JS 应用程序中有一个文件放置区。我想过滤掉被放入应用程序的重复文件,但我似乎找不到合适的方法来比较指向同一文件的两个 File 对象。我只能通过“名称 + 文件大小 + 修改日期”组合进行比较,但这不是 100% 的证明,因为name 属性中没有显示路径。
有没有我刚刚错过的方法?
【问题讨论】:
标签: javascript file
我在 JS 应用程序中有一个文件放置区。我想过滤掉被放入应用程序的重复文件,但我似乎找不到合适的方法来比较指向同一文件的两个 File 对象。我只能通过“名称 + 文件大小 + 修改日期”组合进行比较,但这不是 100% 的证明,因为name 属性中没有显示路径。
有没有我刚刚错过的方法?
【问题讨论】:
标签: javascript file
我知道答案来得太晚了,但我遇到了同样的问题,也许还有其他问题。
我怀疑是否有比您正在使用的方法更好的方法。事实上,这不是 100% 的证明,因为您可以拥有两个具有相同名称、大小和上次修改日期的文件,但它们可以位于两个单独的文件夹中并且是不同的。
如果您有两个不同的<input type="file"> 选择了相同的文件,则在 File 对象之间使用相等 (===) 也会失败。
我认为除了您使用FileReader 按内容实际比较文件之外,还有另一种方法。但这会非常昂贵。
【讨论】: