3.nodejs权威指南--文件
1. 文件
1.1 读写整个文件
1.1.1 读
var fs = require('fs');
fs.readFile('./test.txt',function(err,data){
if(err){
console.log('err');
}else{
console.log(data);
}
});
1.1.2 写
var fs = require('fs');
var data = '测试数据';
fs.writeFile('./write.txt',data,function(err){
if(err){
console.log('err');
}else{
console.log('ok');
}
});
1.1.3 指定位置读
var fs = require('fs');
fs.open('./test.txt','r',function(err,fd){
var buf = new Buffer(255);
fs.read(fd,buf,0,9,3,function(err,bytesRead,buffer){
if(err){
console.log('err');
}else{
console.log(buffer.slice(0,bytesRead).toString());
}
});
});
1.1.4 在指定位置写
var fs = require('fs');
var buffer = new Buffer('hello world');
fs.open('./test.txt','w',function(err,fd){
fs.write(fd,buffer,0,9,3,function(err,written,buffer){
if(err){
console.log('err');
}else{
console.log('ok');
}
});
});
1.2 目录及文件操作
var fs = require('fs');
1.2.1 创建
fs.mkdir('./test',function(err){
});
1.2.2 读取
fs.readdir('./test',function(err,files){
});
1.2.3 查看文件及目录信息
fs.stat('./test',function(err,stats){
});
fs.lstat('./test',function(err,stats){
});
1.2.4 检查文件或目录是否存在
fs.exists('./test',function(exists){
});
1.2.5 获取文件或目录的绝对路径
fs.realpath('./test',function(err,resolvedPath){
});
1.2.6 修改文件访问时间及修改时间
fs.utimes('./test.txt',new Date(),new Date(),function(err){
});
1.2.7 修改文件和目录的读写权限
fs.chmod('./test.txt',0740,function(err){
});
1.2.8 移动目录
fs.rename('./test.txt','./copy.txt',function(err){
});
1.2.9 创建和删除文件的硬连接
fs.link('./test.txt','./link.txt',function(err){
});
fs.unlink('./link.txt',function(err){
});
1.2.10 创建和删除文件的符号连接
fs.symlink('./test.txt','./link.txt','dir',function(err){
});
fs.readlink('./link.txt',function(err){
});
1.2.11 截断文件
fs.truncate('./test.txt',10,function(err){
});
1.2.12 删除空目录
fs.rmdir('.test',function(err){
});
1.2.13 监视文件或目录
var fun = function(curr,prev){
}
fs.watchFile('./test.txt',fun);
fs.unwatchFile('./test.txt',fun);
1.3 读写文件流
1.3.1 读
var fs = require('fs');
var file = fs.createReadStream('./test.txt');
file.on('open',function(fd){
console.log('open');
});
file.on('data',function(data){
console.log('data');
});
file.on('end',function(){
console.log('end');
});
file.on('close',function(){
console.log('close');
});
file.on('error',function(err){
console.log('error');
});
1.3.2 写
var fs = require('fs');
var out = fs.createWriteStream('./test.txt');
- out.on('open',function(fd){
console.log('open');
});
- out.write('hello world','utf8',function(){
});
- out.end('over',function(){
});
1.3.3 pipe复制操作
var fs = require('fs');
var file = fs.createReadStream('./test.txt');
var out = fs.createWriteStream('./out.txt');
file.pipe(out);
1.4 路径操作
var path = require('path');
path.normalize([path]); //转化为标准路径
path.join([path],[path1],...); //合并字符串
path.resolve(path,[path1],...); //以应用程序跟目录为起点,根据所有的字符串合并成一个绝对路径
path.relative(from,to); //获取两个路径的相对路径
path.dirname(path); //获取一个路径的目录名
path.basename(path); //获取一个路径的文件名
path.extname(path); //获取一个路径的扩展名
path.sep //获取系统指定的文件分隔符 windows "\\"
path.delimiter //获取系统指定的路径分隔符 windoes ":"
3.nodejs权威指南--文件的更多相关文章
- 1.nodejs权威指南--基础知识
1. 基础知识 1.1 全局作用域及函数 1.1.1 全局作用域 在nodejs中,定义了一个global对象,代表nodejs中的全局命名空间,任何全局变量.函数或对象都是该对象的一个属性值 1.1 ...
- 7.nodejs权威指南--加密与压缩
1. 加密与压缩 1.1 加密 var crypto = require('crypto'); var text = "12345678"; var hasher = crypto ...
- 9.nodejs权威指南--Socket.IO
1. Socket.IO 1.1 服务器 var http = require('http'); var sio = require('socket.io'); var fs = require('f ...
- 8.nodejs权威指南--MongoDB
1. MongoDB var mongo = require('mongodb'); var host = '127.0.0.1'; var port = mongo.Connecton.DEFAUL ...
- 6.nodejs权威指南--进程
1. 进程 var net = require('net'); var cluster = require('cluster'); cluster.setupMaster({ exec:'child. ...
- 5.nodejs权威指南--HTTP
1. HTTP 1.1 服务器 var http = require('http'); var server = http.createServer(function(req,rsp){ req.on ...
- 4.nodejs权威指南--TCP和UDP
1. TCP和UDP 1.1 TCP服务端 var net = require('net'); var server = net.createServer(); server.on('connecti ...
- 2.nodejs权威指南--Buffer
1. Buffer 1.1 创建 var buf1 = new Buffer(100); var buf2 = new Buffer([0,1,2]); var buf3 = new Buffer(' ...
- Node.js权威指南学习记录
学习nodeJS权威指南的学习记录 导航: 1.console模块 2.全局变量 3.Buffer对象 4.事件对象 5.网络请求 6.文件操作对象 一. COMMON.js的学习.(commonJS ...
随机推荐
- JQuery Easy Ui dataGrid 数据表格
数据表格 - DataGrid 英文文档:http://www.jeasyui.com/documentation/index.php# 继承$.fn.panel.defaults,使用$.fn.da ...
- kafka环境搭建及librdkafka测试
kafka环境搭建及librdkafka测试 (2016-04-05 10:18:25) 一.kafka环境搭建(转自http://kafka.apache.org/documentation.h ...
- java练手 公约数和公倍数
Problem D 公约数和公倍数 时间限制:1000 ms | 内存限制:65535 KB 描述 小明被一个问题给难住了,现在需要你帮帮忙.问题是:给出两个正整数,求出它们的最大公约数和最小 ...
- PHP的 Mysqli扩展库的多语句执行
$mysqli->multi_query($sqls); 执行多个sql语句,返回true/false 有结果集时,使用 $mysqli->store_result(); 来获取结 ...
- jdk版本及编译版本导致服务器部署UnsupportedClassVersionError错误
java本地代码运行正常,部署到服务器无法运行,错误如下: Caused by: java.lang.UnsupportedClassVersionError: com/teshehui/cms/ac ...
- hdu.1067.Gap(bfs+hash)
Gap Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- torch 入门
torch 入门1.安装环境我的环境mac book pro 集成显卡 Intel Iris不能用 cunn 模块,因为显卡不支持 CUDA2.安装步骤: 官方文档 (1).git clone htt ...
- nhibernat4.0.0.4000 bug
//类 NHibernate.Loader.Loader 中 protected virtual string[] ResultRowAliases { get { return null; } } ...
- Apache + Tomcat + mod_jk实现集群服务
Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用apache 分发请求到tomcat中的对应的项目 环境说明: 操作系统:window xp Jav ...
- HTTP请求常见状态码
HTTP状态码(HTTP Status Code) 一些常见的状态码为: 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码.代码 说明 100 (继续) 请求者应当继续提出请求. 服务 ...