W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
編寫一個(gè)程序來(lái)打印出指定目錄下的文件列表,并且以特定的文件名擴(kuò)展名來(lái)過濾這個(gè)列表。命令行提供兩個(gè)參數(shù)提,第一個(gè)是所給的文件目錄路徑(如:path/to/dir),第二個(gè)參數(shù)則是需要過濾出來(lái)的文件的擴(kuò)展名。
舉個(gè)例子:如果第二個(gè)參數(shù)是 txt,那么需要過濾出那些擴(kuò)展名為 .txt的文件。
注意,第二個(gè)參數(shù)將不會(huì)帶有開頭的”.”。
需要在終端中打印出這個(gè)被過濾出來(lái)的列表,每一行一個(gè)文件。另外,必須使用異步的I/O 操作。
fs.readdir() 方法接收兩個(gè)參數(shù):第一個(gè)是一個(gè)路徑,第二個(gè)則是回調(diào)函數(shù),這個(gè)回調(diào)函數(shù)會(huì)有如下特征:
function callback (err, list) { /* ... */ }
這里的 list 是一個(gè)數(shù)組,它所包含的元素是每個(gè)文件的文件名(字符串形式)。
node 自帶的 path 模塊也很有用,特別是它那個(gè) extname 方法。
var fs = require('fs')
var path = require('path')
fs.readdir(process.argv[2], function (err, list) {
list.forEach(function (file) {
if (path.extname(file) === '.' + process.argv[3])
console.log(file)
})
})
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: