Node.Js fs模块文件操作(一)

原创 2016年08月28日 15:33:19

一、字符串操作文件

1.fs.writeFile(filename,data,[options],callback); 创建并写入文件

/**
 * filename, 必选参数,文件名
 * data, 写入的数据,可以字符或一个Buffer对象
 * [options],flag 默认‘2’,mode(权限) 默认‘0o666’,encoding 默认‘utf8’
 * callback  回调函数,回调函数只包含错误信息参数(err),在写入失败时返回。
 */

//创建文件
var fs=require('fs');
//如果文件目录不存在,抛出异常:{ [Error: ENOENT, open 'f:\test1\one.txt'] errno: -4058, code: 'ENOENT', path: 'f:\\test1\\one.txt' }
//如果文件已经存在,则重新创建
fs.writeFile('f:\\test1\\one.txt','文件内容2',function(err){
	if(err)
		return console.error(err);
	console.log('写入文件成功');
});
var w_data = '这是一段通过fs.writeFile函数写入的内容;\r\n';
var w_data = new Buffer(w_data);
console.info(w_data); //<Buffer e8 bf  ... >
fs.writeFile('f:\\test1\\one.txt',w_data,function(err){
	if(err)
		return console.error(err);
	console.log('写入文件成功');
});
2.readFile(filename,[options],callback); 读取文件内容

//字符串方式读取文件
/**
 * filename, 必选参数,文件名
 * [options],可选参数,可指定flag 默认为‘r’,encoding 默认为null,在读取的时候,需要手动指定
 * callback 读取文件后的回调函数,参数默认第一个err,第二个data 数据
 */

var fs=require('fs');
var path=require('path');
var file1=path.resolve('/test1/one.txt');
//如果文件不存在,抛出异常 { [Error: ENOENT, open 'F:\test2\one.txt'] errno: -4058, code: 'ENOENT', path: 'F:\\test2\\one.txt' }
fs.readFile(file1,function(err,data){
	if(err)
		return console.error(err);
	//获取到文件的所有内容
	//默认没有指定编码,返回结果如下
	console.log(data); //<Buffer xxxxx ... >
});
//读取需要制定编码
fs.readFile(file1,{flag:'r+',encoding:'utf8'},function(err,data){
	if(err)
		return console.error(err);
	//获取到文件的所有内容
	console.log(data);
});
3.fs.exists(path, callback);  判断文件或目录是否存在

/**
 * path, 要查看目录/文件的完整路径及名;
 * [callback(exists)], 操作完成回调函数;exists true存在,false表示不存在
 */

//判断文件是否存在
var fs=require('fs');
var path=require('path');
var file1=path.resolve('/test1/one.txt');
fs.exists(file1,function(exists){
	if(exists){
		console.log('文件存在');
	}else{
		console.log('文件不存在');
	}
});
4.fs.stat(path, callback)  获取文件信息
/*
 * path - 文件路径。
 * callback - 回调函数,带有两个参数如:(err, stats), stats 是 fs.Stats 对象
 */

//获取文件信息
var fs = require('fs');
var path = require('path');
var file1 = path.resolve('/test1/one.txt');
fs.stat(file1, function(err, stats) {
    console.info(stats);
    console.info(stats.isFile()); //true
    console.info(stats.isDirectory()); //false
});
5.fs.appendFile(filename,data,[options],callback);  已追加方式写文件
// 参数同 fs.writeFile

var fs = require('fs');
var path = require('path');
var file1 = path.resolve('/test1/one2.txt');
//如果文件夹不存在,抛出异常{ [Error: ENOENT, open 'F:\test2\one2.txt'] errno: -4058, code: 'ENOENT', path: 'F:\\test2\\one2.txt' }
//如果文件不存在,则创建新的文件
fs.appendFile(file1, '追加一行新内容\r\n', function(err) {
    if (err) {
        console.error(err);
        return;
    }
    console.log('追加文件内容成功');
});
6.fs.unlink(path, callback)    删除文件
/**
* path - 文件路径。
* callback - 回调函数,没有参数。
*/

var fs=require('fs');
var path=require('path');
var file1=path.resolve('/test1/one.txt');
//删除文件
//1.如果文件不存在抛出异常:{ [Error: ENOENT, unlink 'F:\test1\one1.txt'] errno: -4058, code: 'ENOENT', path: 'F:\\test1\\one1.txt' }
fs.unlink(file1,function(err){
	if(err)
		return console.error(err);
	console.log('删除文件成功');
});

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

node 学习笔记 - fs 文件操作

跟着网上教程走,第一篇是 process 的一些操作,我觉得除了 process.argv 获取命令行参数, process.env 获取环境变量,其他不太常用,至少我现阶段用不到,所以只是简单的测试...

node中fs.appendFile遇到蛋疼的问题,纠结了好长时间

从昨天下午开始找问题,今天早上才发现问题suo
  • lixld
  • lixld
  • 2014-04-11 10:52
  • 1321

nodejs 读取JSON文件写入txt中 fs.readFile&fs.writeFile

读取JSON格式文件中的数据,然后写入到一个文本文件中

nodejs-操作文件系统读取写入文件

我们通过fs这个模块来对文件系统进行操作,对于文件系统操作一般都有同步、异步方法,两者区别,同步等有返回结果时候,在继续执行后面的代码,异步是不等返回结果,直接执行后面的代码,待有返回结果时候,通过回...

Node.js读写中文内容文件操作

由于Node.js仅支持如下编码:utf8, ucs2, ascii, binary, base64, hex,并不支持中文GBK或GB2312之类的编码, 因此如果要读写中文内容,必须要用额外的模块...
  • youbl
  • youbl
  • 2014-06-10 11:32
  • 51978

在Node.js中读写大文件

前段时间偶然需要整理一个几百MB的文本文件,内容大概370W行,我要将每一行的数据简单格式化一下,并转存到一个新的文件中。 在Node.js中,我们可以通过两种方式来读取文件: 使用fs....

nodejs:遍历文件夹文件统计文件大小

离开公司已经有2个多月,之前写了不少工具,但是在离开后,把一年来的所有积累工具都删除了,现在想起了都心疼。今天想起之前在项目中遇到的问题,今天将其记录下来。 在优化内存的时候,遇到一些图片在加...

node fs模块--文件操作

1、异步读取   fs.readFile( url , code , callback);   2、同步读取   fs.readFileSync( url , code ); ...

node.js第九课(fs文件操作)

 介绍:fs模块是文件操作的封装,它提供了文件的读取,写入,更名,删除,遍历目录,链接POSIX文件系统操作。与其他模块不同的是, fs模块中所有的操作都提供了异步和同步两个版本,例如读取文件...

node fs文件操作

fs模块是文件操作的封装,它提供了文件的读取,写入,更名,删除,遍历目录,链接POSIX文件系统操作。与其他模块不同的是, fs模块中所有的操作都提供了异步和同步两个版本,例如读取文件内容函数异步方...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)