javascript - 读取所有目录条目内容

标签 javascript html5-filesystem

我正在尝试读取目录条目中的所有条目。我可以做到这一点,但我不确定将完全完成后应该发生的代码放在哪里。这就是我所拥有的:

function readcontents(folder, callback) {
  var contents = []
  function readsome(reader) {
    reader.readEntries(function(entries) {
      for(var entry of entries) {
        if(entry.isDirectory) {
          readsome(entry.createReader())
        } else {
          contents.push(entry)
        }
      }
      if(entries.length) {
        readsome(reader)
      }
    })
  }
  readsome(folder.createReader())
}

最佳答案

我能够通过保留计数器来确定它何时完成。

function readcontents(folder, callback) {
  var reading = 0
  var contents = []
  function readsome(reader) {
    reading = reading + 1
    reader.readEntries(function(entries) {
      reading = reading - 1
      for(var entry of entries) {
        if(entry.isDirectory) {
          readsome(entry.createReader())
        } else {
          contents.push(entry)
        }
      }
      if(entries.length) {
        readsome(reader)
      } else if(reading == 0) {
        callback(contents)
      }
    })
  }
  readsome(folder.createReader())
}
readcontents(folder, function(files) {
  console.log(files)
})

关于javascript - 读取所有目录条目内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32041720/

相关文章:

javascript - 谷歌脚本中是否存在现有方法来检查 A1 符号是否在第二个 A1 符号的范围内

javascript - 如何在 HTML5 Blob 对象上使用 base64 编码

javascript - 通过 AJAX 阅读后显示视频 blob

javascript - HTML5 文件系统 API : How to empty a file?

javascript - LinkedIn 如何知道或跟踪我嵌入其小部件的位置?

javascript - 使用 jquery + bootstrap 实现不稳定的面板放置

javascript - 在鼠标悬停事件上向 d3 饼图添加更多文本

javascript - 想要在不增加或减少任何单个像素的情况下显示从 1680 到 980 分辨率的相似 View

javascript - HTML 5 文件系统访问类型错误

android - LeafletJS - 具有本地文件系统的缓存图 block