如何执行Nodejs文件
tips:执行文件时,要注意执行文件的路径是否正确,还有js
文件在引用资源的时候是否使用正确,js文件引用的文件相对路径是对于执行命令的位置来说的。
如何打印到显示器?
Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台。
执行文件 01file.js
01file.js文件 参考链接 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 var fs = require ("fs" );fs.readFile ('../file/123.txt' ,'utf-8' ,function (err,data ){ if (err){ console .log ("读取失败!" ); } console .log ("异步读取:\n" +data) }); var data=fs.readFileSync ('../file/123.txt' ,'utf-8' )console .log ("同步读取:\n" +data)var fs = require ("fs" )fs.stat ("../file/123.txt" ,function (err,stats ){ if (err){ return console .error (err) } console .log ("是否为文件" +stats.isFile ()) console .log ("是否为文件夹" +stats.isDirectory ()) });
文件内容 123.txt
123.txt文件
读取文件fs.readFile()
1 2 3 4 5 6 7 8 9 10 11 12 var fs = require ("fs" );fs.readFile ('../file/123.txt' ,'utf-8' ,function (err,data ){ if (err){ console .log ("读取失败!" ); } console .log ("异步读取:\n" +data) }); var data=fs.readFileSync ('../file/123.txt' ,'utf-8' )console .log ("同步读取:\n" +data)
输出结果
写入文件fs.writeFile()
tips:fs.writeFile()并不能创建文件夹,只能创建文件,想创建文件夹使用fs.mkdir()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 var fs = require ("fs" );var data= "我是写入的内容" fs.writeFile ("../file/writeFile.txt" ,data,function (err ){ if (err){ return console .error (err); } console .log ("写入成功!" ); fs.readFile ("../file/writeFile.txt" ,function (err,dat ){ if (err){ return console .error (err); } console .log (dat.toString ()); }); });
判断文件或者文件夹类型
stats.isFile()
stats.isDirectory()
1 2 3 4 5 6 7 8 9 10 var fs = require ("fs" )fs.stat ("../file/123.txt" ,function (err,stats ){ if (err){ return console .error (err) } console .log ("判断是否为文件" +stats.isFile ()) console .log ("判断是否为文件夹" +stats.isDirectory ()) });
输出结果
创建目录fs.mkdir()
1 2 3 4 5 6 7 8 9 var fs = require ("fs" );console .log ("创建目录" );fs.mkdir ("../file/test/" ,function (err ){ if (err){ return console .error (err); } console .log ("目录创建成功!" ) });
读取目录下内容fs.readdir()
1 2 3 4 5 6 7 8 9 fs.readdir ("../file/" ,function (err,data ){ if (err){ return console .error (err); } data.forEach (function (file ){ console .log (file); }); });
缓冲区Buffer.
Buffer.from(param)
Buffer.alloc(3)
str.toString()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 var str="abcd" console .log (str)console .log (Buffer .from (str))console .log (Buffer .alloc (3 ))console .log (str.toString ())var str2 = "中国,I LOVE YOU" console .log (str2+"长度:" +str2.length )var ic = Buffer .from (str2)console .log (ic)console .log (ic+"长度:" +ic.length )
流式文件加载
fs.createReadStream()
fs.createWriteStream()
1 2 3 4 5 6 7 8 9 10 var fs = require ("fs" )var rs= fs.createReadStream ("../file/小猪佩奇第一季.mp4" )var ws= fs.createWriteStream ("../file/小猪佩奇.mp4" )rs.on ('data' ,function (data ){ ws.write (data) }) rs.pipe (ws)
总结
第一天主要是学习了一些基本的文件操作,以及熟悉在Nodejs环境下的一些语法结构。
文件的读取
文件的写入
大文件的流式读写
以及路径的拼接等等
补充
2022/07/11
补充
路径拼接path.join()
1 2 3 4 5 var fs = require ("fs" )var path =require ("path" )const pathStr = path.join ("../file/test/123/" ,"../" ,"./a/c/d" ,"./" )console .log ("pathStr路径:" +pathStr)
路径定位
__dirname
__filename //只获取文件名,不包括后缀
1 2 3 4 5 6 const newPath=path.join (__dirname,"../" )console .log ("newPath路径:" +newPath)console .log ("定位到当前文件夹路径:" +__dirname)console .log ("定位到当前执行文件:" +__filename)
获取中文文件名
1 2 3 4 5 6 const path = require ("path" )const newPath = path.basename ("C:\\Users\\Administrator\\Desktop\\学习\\NodeJs\\file\\123.txt" )console .log (__filename)console .log (newPath)