html5 本地文件操作系统,读取目录 - createReader《 HTML5:文件系统 》

调用目录的 createReader 方法,它会返回一个 DirectoryReader 对象,然后调用这个 DirectoryReader 对象的 readEntries 方法,可以得到目录所包含的项目,使用一个循环语句,可以输出所有的项目。下面我们试试列出文件系统根目录下的所有的文件和目录。

先定义一个变量 ... 叫做 directoryReader ... 它的值是使用 createReader 方法返回的对象 ... 我们可以调用文件系统的根目录的 createReader 方法 ...

/* 读取目录 */

var directoryReader = fileSystem.root.createReader();

directoryReader.readEntries(function (entries) {

var i;

for (i = 0; i < entries.length; i += 1) {

console.log(entries[i]);

}

}, onError);

然后去调用这个 directoryReader 对象的 readEntires 方法 ... 使用这个方法可以读取项目... 这个方法有两个参数 .... 读取成功以后执行的函数 ...

这里我们用一个匿名函数 ... 这里可以把 readEntries 返回的对象交给这个函数 ... 在这个函数里面,用一个 for 循环去处理这个对象里的东西,也就是根目录包含的目录和文件 ... 这里我们只是简单的把每个项目都输出到控制台上 ...

最后一个参数是读取的发生错误的时候要执行的函数 ...

下面我们去预览一下 ... 保存 ... 回到浏览器 ... 我事先在根目录的下面,使用之前的视频里介绍的方法,创建了几个文件,还有几个目录 ...

所以在控制台上,你会看到所有的在根目录下面的这些文件和目录。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Apollo中,可以调用`Reader`对象的`.stop()`方法停止读取消息,以达到停止监听Topic的目的。 一般来说,可以在代码中某个适当的时间点(例如,某个事件发生或者达到某个条件)调用`.stop()`方法来停止读取消息。例如: ```javascript const { Client, Reader } = require('nats'); const nc = await Client.connect({ servers: 'nats://demo.nats.io:4222' }); const reader = nc.createReader('my-topic'); // 注册消息处理回调函数 reader.on('message', (msg) => { console.log(`Received message: ${msg.data}`); }); // 启动Reader对象,开始读取消息 reader.start(); // 在某个适当的时间点停止读取消息 setTimeout(() => { reader.stop(); // 停止读取消息 }, 5000); // 关闭NATS连接 nc.close(); ``` 在上面的代码中,我们先创建了一个NATS客户端连接,然后使用`.createReader()`方法创建了一个`Reader`对象,注册了一个消息处理回调函数,并调用了`.start()`方法启动了`Reader`对象。然后,我们使用`setTimeout()`函数来模拟一个定时事件,在5秒后调用`.stop()`方法停止读取消息。最后,我们调用`.close()`方法关闭NATS客户端连接。 需要注意的是,如果您停止读取消息后不再需要使用`Reader`对象,则应该调用`.close()`方法关闭`Reader`对象,以释放资源。例如,上面的代码可以改为: ```javascript const { Client, Reader } = require('nats'); const nc = await Client.connect({ servers: 'nats://demo.nats.io:4222' }); const reader = nc.createReader('my-topic'); // 注册消息处理回调函数 reader.on('message', (msg) => { console.log(`Received message: ${msg.data}`); }); // 启动Reader对象,开始读取消息 reader.start(); // 在某个适当的时间点停止读取消息,并关闭Reader对象 setTimeout(() => { reader.close(); // 停止读取消息并关闭Reader对象 }, 5000); // 关闭NATS连接 nc.close(); ``` 在上面的代码中,我们在停止读取消息后调用了`.close()`方法关闭了`Reader`对象。这样可以确保在不再需要使用`Reader`对象时及时释放资源,避免资源泄漏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值