node的基础学习笔记
以下是学习node的笔记
一、node的同步文件写入
用node写文件和人工手动写文件是一样的步骤: 打开文件-向文件中写入内容-保存并关闭文件
1.打开文件
fs.opensync (path,flags[,mode])
-path要打开文件的路径
-flags打开文件要微的操作的类型
r只读的
w可写的
-mode设置文件的领作权限,一靓不传
返回值
-该方法会返回一个文件的描述符作为达果,费们可以通过该描述符来对文件进行各种c操作
2.向文件中写入内容
fs.writesync(fd,string[,position(,encoding]])
-fd文件的描述符,需要传递要可入的文件的描述符
-string要写入的内容
-position写入的起始位置
-encoding可入的编码,默以utf-8
3.保存并关闭文件
fs.closesyne(fd)
-td要夫闭的文件的描述符
代码如下:
var fs require("fs");
//打开文件
var fd = fs.opensync("hello.txt","w");
//向文件中写入内容
fs,writesync(fd,"今天天气真不错w",2):
//关闭文样
fs.closesync(fd);
二、node的异步文件写入
异步文件写入需要open方法:
fs.open(path[, flags[, mode]], callback)
官方中文文档:
上代码:
//打开文件
fs.open("hello2.txt", "w", function(err, fd) {
//判断是否出错
if (!err) {
//如果没有出错,工则对文件进行写入操作
fs.write(Ed, "这是异步写入的内容", function(err) {
if (!err) {
console.log("写入成功~~");
}
//关闭文件
fs.close(fd, function(err) {
if (!err) {
console.log("文件已关闭~~~");
}
});
});
} else {
console.log(err);
}
});
console.log("程序向下执行~~~");
三、node的简单文件写入
异步写法
fs.writeFile(file,data,[options],callback)
-file要操作的文件的路径
-data要写入的数据
-options进项,可以对写入进行一些设置I
-ca11back当写入完成以后执行的函数
//引入fs模块
var fs require("fs");
fs.writeFile("hello3.txt","这是通过writeFile写入的内容",function(err){
if(!err){
console.log("写入成功~~~");
});
同步写法
fs.writerilesync(file,data[,options])
-file要操作的文件的路径
-data要写入的数据
-options进项,可以对写入进行一些设置I
-ca11back当写入完成以后执行的函数
一、buffer缓冲区
如何理解buffer?
buffer 是个缓冲区,可以理解成是一个数组,但是js中的数组只能保存str,number,obj等数据类型,但是node.js是能作为服务器的语言,还要传输图片音乐视频等格式,这些文件都是二进制,用数组很明显是实现不了的,因此要使用buffer
buffer是底层语言它能直接在硬盘上开辟内存空间
1.buffer的开辟空间API
Buffer.alloc(size)能开辟一个安全的内存空间,需要清除原有数据
Buffer.allocUnsafe(size)能开辟一个不安全的内存空间但是效率高,不需要清除原有数据