我要做的是输出文件夹中所有文件的内容:
const fs = require('fs')
, input = process.argv[2]
fs.readdir(__dirname + `/${input}/`, (err, files) => {
if (err) {
console.log(err)
return
}
files.forEach((file) => {
console.log(file)
fs.readFile(file, 'utf8', (err, data) => {
console.log(data)
})
})
})
但是我很困惑console.log(file)
是否输出文件名:
alex@alex-K43U:~/node/m2n/bin$ node index4.js folder
test.txt
test2.txt
但是console.log(data)
返回undefined
:
alex@alex-K43U:~/node/m2n/bin$ node index4.js folder
undefined
undefined
这里发生了什么事?
编辑:
也许有问题__dirname
吗?这是我的项目结构:
您需要将完整路径传递给文件名:
fs.readFile(__dirname + `/${input}/` + file, 'utf8', (err, data) => {
我建议您记录错误,以便下次知道发生了什么错误:
fs.readFile(__dirname + `/${input}/` + file, 'utf8', (err, data) => {
if (err) {
console.log(err)
}
console.log(data)
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句