nodejs学习笔记<六>文件处理
nodejs处理文件模块:fs —> var fs = require(‘fs’);
读取文件:readFileSync & readFile
- 读取文件路径为绝对;
- 读取结果需要toString();
readFileSync:
- 同步读取文件,既文件未读取完(或读取异常),程序会阻塞在readFileSync不会继续往下执行。
fs.readFileSync('path'); //路径为绝对路径
例:
var file = require('fs');
function file_parse(){
var str = file.readFileSync('f:/node/content.txt');//获取文件流
console.log(str.toString());
console.log('文件读取完毕');
}
file_parse();
执行结果:

readFile:
- 非同步读取文件,代码不会被阻塞(不会因文件读取时间长,或读取异常而影响后续代码的执行)。
fs.readFile('path',callback[function (){}]); //路径为绝对路径,毁掉函数
例:
var file = require('fs');
function file_parse(){
var str = file.readFile('f:/node/content.txt',function(err,data){
if(err) {return console.error(err);}
console.log(data.toString());
});
//err异常信息;data读取文件流
console.log('继续执行......');
}
file_parse();
执行结果:
******************************************************************************************************************
写入文件:writeFile
- 写入文件路径为绝对;(路径不正确或路径非绝对路径,写入不生效)
- 写入成功后,原文件的内容会被重写。
writeFile:
- 非同步写入文件,代码不会被阻塞。
fs.writeFile('path','content','charset',callback[function (){}]); //路径为绝对路径,写入内容,编码格式(可选),回调函数
例:
var file = require('fs');
function file_write(){
file.writeFile('F:/node/content.txt','这是写入内容','UTF-8',function (err){
if(err){ console.error(err); }
console.log('继续执行......');
});
}
file_write();
无论是否写入成功(只要没出现异常),callback的内容都会被执行。
******************************************************************************************************************
删除文件:unlink
- 路径为绝对路径;
- 被删除文件不会出现回收站;
fs.unlink('path',callback[function(){}]); //路径为绝对路径,回调函数
例:
var file = require('fs');
function del(){
file.unlink('f:/node/new.txt',function (){console.log('success');});
}
del();
执行后,指定删除文件不会出现在回收站
******************************************************************************************************************
查看文件状态:stat
- 路径为绝对路径;
fs.stat('path',callback[function(err,stat){}]); //路径为绝对路径,回调函数(异常信息,文件信息)
例:
var file = require('fs');
function stat_file(){
file.stat('f:/node/content.txt',function (err,data){
if(err){ console.error(err); }
else{ console.log(data); }
});
}
stat_file();
执行结果:
以上收集的一些常用方法,关于fs详细说明,请查看官方文档:官方文档
nodejs学习笔记<六>文件处理的更多相关文章
- Python学习笔记六--文件和输入输出
6.1文件对象 所有Python对文件的操作都是基于对文件对象的操作.那么就从文件对象的创建说起.open()[file()]提供初始化输入输出的接口.open()成功打开文件时会返回一个文件对象. ...
- [Scala]Scala学习笔记六 文件
1. 读取行 读取文件,可以使用scala.io.Source对象的fromFile方法.如果读取所有行可以使用getLines方法: val source = Source.fromFile(&qu ...
- python学习笔记(六)---文件操作与异常处理机制
文件读取 读取整个文件 要读取文件,需要一个包含几行文本的文件.下面首先来创建一个文件,它包含精确到小数点后30位的圆周率值,且在小数点后每10位处都换行: pi_digits.txt 3.14159 ...
- NodeJS学习笔记六
Symbol简介 ES6引入了一种新的原始数据类型Symbol,表示独一无二的值.它是JavaScript语言的第七种数据类型,前六种是:Undefined.Null.布尔值(Boolean).字符串 ...
- Nodejs学习笔记(十六)--- Pomelo介绍&入门
目录 前言&介绍 安装Pomelo 创建项目并启动 创建项目 项目结构说明 启动 测试连接 聊天服务器 新建gate和chat服务器 配置master.json 配置servers.json ...
- Nodejs学习笔记(十六)—Pomelo介绍&入门
前言&介绍 Pomelo:一个快速.可扩展.Node.js分布式游戏服务器框架 从三四年前接触Node.js开始就接触到了Pomelo,从Pomelo最初的版本到现在,总的来说网易出品还算不错 ...
- Nodejs学习笔记(六)--- Node.js + Express 构建网站预备知识
目录 前言 新建express项目并自定义路由规则 如何提取页面中的公共部分? 如何提交表单并接收参数? GET 方式 POST 方式 如何字符串加密? 如何使用session? 如何使用cookie ...
- java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)
java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...
- Nodejs学习笔记(六)—Node.js + Express 构建网站预备知识
前言 前面经过五篇Node.js的学习,基本可以开始动手构建一个网站应用了,先用这一篇了解一些构建网站的知识! 主要是些基础的东西... 如何去创建路由规则.如何去提交表单并接收表单项的值.如何去给密 ...
随机推荐
- Python精神
[root@LDAP_slave ~]# python -c "import this" The Zen of Python, by Tim Peters Beautiful is ...
- string转换成color转
string转换成color string col = "#FF8400"; this.BackColor = System.Draw ...
- PHP gmdate() 函数
定义和用法 gmdate() 函数格式化 GMT/UTC 日期/时间. 同 date() 函数 类似,不同的是返回的时间是格林威治标准时(GMT). 语法 gmdate(format,timestam ...
- ecshop底部版权修改和组成分析
我们在ecshop二次开发和ecshop使用过程中,往往需要对ecshop底部进行处理和修改.比如ecshop底部版权问题,ecshop底部程序结构问题.也有很多朋友咨询ecshop底部的一些修改问题 ...
- oracle查看表占磁盘大小
select segment_name, bytes/1024/1024 from user_segments S where S.segment_type = 'TABLE' AND S.segme ...
- Java内部类、静态嵌套类、局部内部类、匿名内部类
Nested classes are further divided into two types: static nested classes: If the nested class is sta ...
- 设计模式之——单例模式(Singleton)的常见应用场景
单例模式(Singleton)也叫单态模式,是设计模式中最为简单的一种模式,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象,也因此 ...
- Sightseeing tour
Sightseeing tour Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 8276 Accepted: 3489 Desc ...
- JAVA基础知识之Set集合
Set集合的基本特征是不记录添加顺序,不允许元素重复(想想是为什么).最常用的实现类是HashSet. 本文将要介绍以下内容 HashSet类 HashSe的特征 HashSet的equals和has ...
- noi 7627 鸡蛋的硬度
题目链接:http://noi.openjudge.cn/ch0206/7627/ 题目讲的二分其实是一个误导, d(i,j),表示当前最优策略时,最坏的情况下: 有 J 个鸡蛋,I 个可以怀疑的楼层 ...