1.文件读取
fs.readFile(path[,options],callback)
- path 读取的文件路径
- options 可选的参数 默认为null 其实是buff
- callback 回调函数
- err:错误对象
- data:具体的值
const fs=require('fs')
fs.readFile('./files/1.txt','utf8',(err,data)=>{
if(err) return console.log(err.message)
console.log(data)
//显示转换
//console.log(data.toString())
//隐式转换
//console.log(data+'')
})
2.文件写入
fs.writeFile(file,data[,options],callback)
- file 写入的文件路径
- data 写入的数据
- options 可选的参数 默认为utf8
- callback 回调函数
- err 错误对象
const fs=require('fs')
fs.writeFile('./files/2.txt','你是最棒的',err=>{
if(err) return console.log(err.message)
console.log('写入成功')
})
3.文件拷贝
- fs.copyFile(src, dest[,mode],callback) v8.5.0+
- src 要拷贝的文件路径
- dest 输出的文件路径
- mode 可选的参数
- callback 回调函数
- err 错误对象
const fs = require('fs')
fs.copyFile('./files/1.txt', './files/1-copy.txt', err => {
if (err) return console.log(err.message)
console.log('拷贝成功')
})
4.path路径处理
const fs = require('fs')
const path = require('path')
console.log(__dirname)//D:\千锋\第三阶段\老师\day01\code
// console.log(__filename)//D:\千锋\第三阶段\老师\day01\code\04-path路径处理.js
// const abspath = __dirname + '/files/1.txt'
// 以后遇到路径拼接 建议使用path.join
// const abspath = path.join(__dirname, './files/1.txt')
// fs.readFile(abspath, 'utf8', (err, data) => {
// if (err) return console.log(err.message)
// console.log(data)
// })
// web相对路径 相对文件
// node相对路径 相对于运行环境
作业:读取txt中的数据后,改变格式,再将其写入另一个文件
const fs = require('fs')
const path = require('path')
const querystring = require('querystring')
fs.readFile(path.join('./1.txt'), 'utf8', (err, dataStr) => {
if (err) return console.log(err.message)
console.log(dataStr);
let newArr = []
let arr = dataStr.trim().split('\n')
const obj = {}
// console.log(arr)
arr.forEach(item => {
// console.log(JSON.parse('{"' + item.replace(/ /g, '\",\"').replace(/=/g, '\":\"') + '"}'))
// newArr.push(JSON.parse('{"' + item.replace(/ /g, '\",\"').replace(/=/g, '\":\"') + '"}'))
// console.log(querystring.parse(item, ' '))
newArr.push(querystring.parse(item, ' '))
})
obj.message = newArr
// 参数1 str
// 参数2 callback 可以设置为 null
// 参数3 设置数据的格式
// JSON.stringify
fs.writeFile(path.join(__dirname, './2.json'), JSON.stringify(obj, null, '\t'), err => {
if (err) return console.log(err.message)
console.log('数据转换成功')
})
})