节点中的原始文件名

时间:2018-06-14 10:19:47

标签: javascript node.js file nodes

是否可以从节点中具有绝对路径的文件中获取原始文件名?

例如,在节点I中,我可以使用path.basename获取名称和基本网址,并使用fs.stats获取更详细的信息,这将导致:

Stats {
  dev: 2114,
  ino: 48064969,
  mode: 33188,
  nlink: 1,
  uid: 85,
  gid: 100,
  rdev: 0,
  size: 527,
  blksize: 4096,
  blocks: 8,
  atimeMs: 1318289051000.1,
  mtimeMs: 1318289051000.1,
  ctimeMs: 1318289051000.1,
  birthtimeMs: 1318289051000.1,
  atime: Mon, 10 Oct 2011 23:24:11 GMT,
  mtime: Mon, 10 Oct 2011 23:24:11 GMT,
  ctime: Mon, 10 Oct 2011 23:24:11 GMT,
  birthtime: Mon, 10 Oct 2011 23:24:11 GMT }

然而,这些方法都不会给我文件的原始名称,这对于将2个文件相互比较很有用。例如,如果我从某个网站下载名为file.exe的文件,然后再次下载相同的文件,则新文件将被称为file (1).exe,因此名称与原始文件不同。

因此,我无法将文件名相互比较。

任何人都知道一个好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

  

例如,如果我从某个网站下载名为column.width的文件,然后再次下载相同的文件,则新文件将被称为file.exe,因此名称与原始文件不同。< / p>

在一般情况下,文件的名称不会存储在文件数据中的任何位置,因此如果您将文件下载为file (1).exe,则无法知道它被称为{{1在过去的某个时刻。

在.exe文件的特定情况下,某些名称可能在文件内容中的某个位置,也可能不在文件的内容中,但它不一定是重命名之前最近的名称。