📜  Node.js fs.Dirent.isBlockDevice() 方法

📅  最后修改于: 2022-05-13 01:56:47.548000             🧑  作者: Mango

Node.js fs.Dirent.isBlockDevice() 方法

fs.Dirent.isBlockDevice()方法是文件系统模块中fs.Dirent类的内置应用程序编程接口,用于检查特定的 dirent 是否描述了块设备。
句法:

const dirent.isBlockDevice()

参数:此方法不接受任何参数。
返回值:如果特定的dirent描述了块设备,则此方法返回true,否则返回false。
下面的程序说明了 Node.js 中fs.dirent.isBlockDevice()方法的使用:
示例 1:
文件名:index.js

javascript
// Node program to demonstrate the
// dirent.isBlockDevice() method
const fs = require('fs');
  
// Initiating async function
async function stop(path) {
  
  // Creating and initiating directory's
  // underlying resource handle
  const dir = await fs.promises.opendir(path);
    
  // Synchronously reading the directory's
  // underlying resource handle using
  // readSync() method
  for(var i =0 ; i <=3 ; i ++ ){
  
  // Checking if the particular dirent
  // is blocked device or not by using
  // isBlockDevice() method
  const value = (dir.readSync()).isBlockDevice();
  
  // Display the result
  console.log(dir.readSync());
  console.log(value);
  
  }
}
  
// Catching error
stop('./').catch(console.error);


javascript
// Node program to demonstrate the
// dirent.isBlockDevice() method
const fs = require('fs');
 
// Initiating async function
async function stop(path) {
 
    // Creating and initiating directory's
    // underlying resource handle
    const dir = await fs.promises
        .opendir(new URL('file:///F:/'));
 
    // Synchronously reading the directory's
    // underlying resource handle using
    // readSync() method
    for (var i = 0; i <= 3; i++) {
 
        // Checking if the particular
        // dirent is blocked device or not
        // by using isBlockDevice() method
        const value = (dir.readSync())
                        .isBlockDevice();
 
        // Display the result
        console.log(dir.readSync());
        console.log(value);
    }
}
 
// Catching error
stop('./').catch(console.error);


使用以下命令运行index.js文件:

node index.js

输出:

Dirent { name: 'cert.cer', [Symbol(type)]: 1 }
false
Dirent { name: 'certificate1.cer', [Symbol(type)]: 1 }
false
Dirent { name: 'filename.txt', [Symbol(type)]: 1 }
false
Dirent { name: 'GFG.java', [Symbol(type)]: 1 }
false

示例 2:
文件名:index.js

javascript

// Node program to demonstrate the
// dirent.isBlockDevice() method
const fs = require('fs');
 
// Initiating async function
async function stop(path) {
 
    // Creating and initiating directory's
    // underlying resource handle
    const dir = await fs.promises
        .opendir(new URL('file:///F:/'));
 
    // Synchronously reading the directory's
    // underlying resource handle using
    // readSync() method
    for (var i = 0; i <= 3; i++) {
 
        // Checking if the particular
        // dirent is blocked device or not
        // by using isBlockDevice() method
        const value = (dir.readSync())
                        .isBlockDevice();
 
        // Display the result
        console.log(dir.readSync());
        console.log(value);
    }
}
 
// Catching error
stop('./').catch(console.error);

使用以下命令运行index.js文件:

node index.js

输出:

Dirent { name: 'adonis_auth_api', [Symbol(type)]: 2 }
false
Dirent { name: 'Android Template', [Symbol(type)]: 2 }
false
Dirent { name: 'Calander', [Symbol(type)]: 2 }
false
Dirent { name: 'first-app', [Symbol(type)]: 2 }
false

注意:上述程序不会在在线 JavaScript 和脚本编辑器上运行。
参考: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_dirent_isblockdevice