引言
浏览器中的 JavaScript 是没有文件操作的能力的,但是 Nodejs 中的 JavaScript 提供了文件操作的能力
在 Node 中如果想要进行文件操作,就必须引入 fs 这个核心模块,fs 是 file-system 的简写,就是文件系统的意思,在 fs 这个核心模块中,提供了所有的文件操作相关的 API
var fs = require('fs')
读取文件
// 使用 require 方法加载 fs 核心模块var fs = require('fs')// 读取文件// 第一个参数就是要读取的文件路径// 第二个参数是一个回调函数// // 成功// data 数据// error null// 失败// data undefined没有数据// error 错误对象fs.readFile('hello.txt', function (error, data) { if (error) { // 在这里就可以通过判断 error 来确认是否有错误发生 console.log('读取文件失败了') } else { //// 文件中存储的其实都是二进制数据 0 1 // 这里为什么看到的不是 0 和 1 呢?原因是二进制转为 16 进制了 // 但是无论是二进制01还是16进制,人类都不认识 // 所以我们可以通过 toString 方法把其转为我们能认识的字符 console.log(data.toString()) }})
写文件
var fs = require('fs')// 第一个参数:文件路径// 第二个参数:文件内容// 第三个参数:回调函数// 成功:// 文件写入成功// error 是 null// 失败:// 文件写入失败// error 就是错误对象fs.writeFile('./data/你好.md', '大家好,给大家介绍一下,我是Node.js', function (error) { if (error) { console.log('写入失败') } else { console.log('写入成功了') }})