node.js fs 文件模块 学习笔记 一
Node 导入文件系统模块(fs)语法如下所示:
let fs = require("fs")
目录结构: F:\phpstudy_pro\WWW\node.js\demo 目录下:
demo
|- fs.js
|- index.html
|- text.txt
fs.readFile() 方法, 用于异步读取指定文件
fs.readFile(path[, options], callback);
index.html 文件到代码如下:
let fs = require("fs")
fs.js 文件代码如下:
// 引入 fs 文件系统模块
let fs = require("fs");
// 异步读取 文件
let file_content = fs.readFile('index.html','utf-8', function (err, data) {
if (err) {
return console.error('当前文件不存在');
}
// 输出读取数据
console.log(data.toString());
});
在 demo 目录 下 代码执行:
$ node fs.js
<h1>我的第一个标题</h1>
fs.writeFile() 方法, 用于异步写入文件内容
fs.js 文件代码如下:
// 引入 fs 文件系统模块
let fs = require("fs");
/**
* 异步写入文件
* fs.writeFile(file, data[, options], callback)
* @file 写入文件名
* @data 写入数据
* @options
@encoding <string> | <null> Default: 'utf8'
@mode <integer> Default: 0o666
@flag <string> See support of file system flags. Default: 'w'.
@signal <AbortSignal> allows aborting an in-progress writeFile
@callback 回调函数
@err 如果写入失败,将返回 err 对象,反之则返回null
*/
fs.writeFile('text.txt','你好node.js','utf-8',(err)=>{
// err 对象存在表示 ,文件写入失败
if(err){
return console.error('文件写入失败');
}
console.log('文件写入成功');
});
在 demo 目录 下 代码执行:
$ node fs.js
文件写入成功
text.txt 文件内容如下:
你好node.js
案例练习
目录结构:
demo1
|- fs_demo.js
+ |- /file
+ |- study.txt
+ |- study-ok.txt
使用 fs 文件模块 ,将 study.txt 文件考试成绩数据, 整理到 study-ok 文件中去。
整理前: study.txt 成绩数据 如下:
小红=99 小明=80 小刚=100 小黄=70 小绿=85 小黑=40 小白=65
整理后:study-ok 成绩输入如下:
小红:99
小明:80
小刚:100
小黄:70
小绿:85
小黑:40
小白:65
代码练习:
__dirname : 表示当前执行脚本所在的目录。
fs_demo.js 代码如下:
// 引入 fs 文件模块
let fs = require("fs");
// 异步读取文件内容
fs.readFile(__dirname+"/file/study.txt",'utf-8',function(err,data){
if(err){
return console.log("file目录下study.txt 文件不存在");
}
// 把字符串 分割成 数组
let arrold = data.toString().split(" ");
let arrNew = [];
arrold.forEach((value)=>{
arrNew.push(value.replace("=",":"));
});
// 拼接字符串
let str = arrNew.join("\n");
// 写入文件
fs.writeFile(__dirname+"/file/study-ok.txt",str,function(err){
if(err){
return console.error(filepath_ok+'文件写入失败');
}
console.log("文件写入成功");
});
});
运行文件:
F:\phpstudy_pro\WWW\node.js\demo1>node fs_demo.js
文件写入成功
本文来自博客园,作者:带着小星星去睡觉,转载请注明原文链接:https://www.cnblogs.com/maolego/articles/16833528.html

浙公网安备 33010602011771号