一、readFile方法
//1.导入fs模块,来操作文件
const fs = require('fs')
//2.调用fs.readFile()方法读取文件
// 参数1:读取文件的存放路径
// 参数2:读取文件的时候采用的编码格式 一般默认指定UTF8
// 参数3:回调函数,拿到读取失败和成功的结果 err dataStr
fs.readFile('./files/1.txt', 'utf-8', function(err, dataStr) {
//2.1失败的结果 成功err的值为null 失败 err的值为错误对象 dataStr的值为undefined
// console.log('err');
// console.log('----');
// //2.2成功的结果
// console.log('dataStr');
if (err) {
return console.log('文件读取失败!' + err.message);
}
console.log('文件读取成功,内容是:' + dataStr);
})
二、writeFile方法
//1.导入fs文件系统模块
const fs = require('fs')
//2.调用fs.writeFile()方法 写入文件的内容
//参数1:表示文件的存放路径
//参数2:写入的内容
//3.回调函数
fs.writeFile('./files/1.txt', 'abcd', function name(err) {
//若果文件写入成功 err值为null
//失败 err的值等于一个错误对象
if (err) {
console.log('default' + err.message);
}
console.log('success');
})
三、路径问题
const fs = require('fs')
// fs.readFile('./files/1.txt', 'utf8', function(err, data) {
// if (err) {
// return console.log('读取文件失败:' + err);
// }
// console.log('读取文件成功!' + data);
// })
// 使用绝对路径 移植性非常差 不利于维护
//__dirname 表示当前文件所处的目录
console.log(__dirname);
fs.readFile(__dirname + '/files/1.txt', 'utf8', function(err, data) {
if (err) {
return console.log('读取文件失败:' + err);
}
console.log('读取文件成功!' + data);
})
四、path路径模块
const path = require('path')
//路径拼接 ../会取消一层
const pathStr = path.join('/a', '/b/c', '../', './d', 'e')
console.log(pathStr)
const pathStr2 = path.join(__dirname, '/files/1.txt')
console.log(pathStr2) //输出当前所处目录\files\1.txt
//path.basename()获取文件名
const fpath = '/a/b/c/index.html'
const fullName = path.basename(fpath)
console.log(fullName);
var nameWithoutExt = path.basename(fpath, '.html')
console.log(nameWithoutExt);
//获取路径中的文件扩展名
//path.extname()
console.log(path.extname(fpath));