欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用nodejs 服务器 实现文件读写操作

程序员文章站 2024-01-20 18:40:40
...

1.新建文件readwritefile.js

使用nodejs 服务器 实现文件读写操作


2. 在readwritefile.js文件中写入执行生成文件的代码。

使用nodejs 服务器 实现文件读写操作

代码片段:

// 引入操作文件的模板包
// fs 是node平台提供的核心模块,主要用于操作文件

var fileOp = require('fs');

// 向指定文件中写入指定的内容
// 方法:writeFile('文件路径','写入的内容','处理结果的回调函数')

// 在执行该方法时,如果文件不存在,直接创建,否则直接覆盖。
fileOp.writeFile('./practice/w01.txt','hello nodeJs ,My name : Albert' ,function(error){
	
	// 此处回调函数主要用于返回写入文件时的结果。error代表一个错误对象。
	// 当执行该方法时,会自动调用改回调函数,
	// 当写入文件出现错误时,error:返回一个错误对象,否则返回:null;
	if(error){
		console.log(error);
		return console.log('内容写入失败!');
	}
	return console.log('内容写入成功!');
	
})

3. 通过虚拟DOS进入readwritefile.js文件所在目录。

  • 执行命令:nide readwritefile.js 

使用nodejs 服务器 实现文件读写操作

  • 解决方法在Program Files\JavaTool\node_js_source目录下创建 practice文件夹。

使用nodejs 服务器 实现文件读写操作

  • 创建完成之后,继续执行命令:nide readwritefile.js 

使用nodejs 服务器 实现文件读写操作

  • 查看文件及文件内容,如下:
使用nodejs 服务器 实现文件读写操作

注意:在执行该方法时,如果文件(w01.txt)不存在,直接创建文件(w01.txt),否则直接覆盖。

4. 从指定文件中读取文件内容。

  • 创建一个w02.txt文件,文件内容如下:

使用nodejs 服务器 实现文件读写操作

  • 编写读取文件内容的js代码文件readfile.js。
  • 代码片段:
// 引入操作文件的模板包
// fs 是node平台提供的核心模块,主要用于操作文件

var fileOp = require('fs');

// 从指定文件中读取文件中的内容
// 方法:readFile('文件路径','处理结果的回调函数('错误对象','返回数据??//')')
/**
    官网方法解析:
        fs.readFile(path[, options], callback)#
        path <string> | <Buffer> | <URL> | <integer> 文件名或文件描述符。
        options <Object> | <string>
        encoding <string> | <null> 默认为 null。
        flag <string> 默认为 'r'。
        callback <Function>
        err <Error>
        data <string> | <Buffer>
**/

fileOp.readFile('./practice/w02.txt' ,function(error,data){
	
	// 此处回调函数主要用于返回读取文件时的结果。error代表一个错误对象。
	// 当执行该方法时,会自动调用改回调函数,
	// 当读取文件出现错误时,error:返回一个错误对象,否则返回:null;
	if(error){
		console.log('错误信息:');
		throw error;
		return console.log('内容读取失败!');
	}
	console.log('文件内容如下:');
	console.log(data);
	return console.log('内容读取成功!');
	
})

  • 执行命令:node readfile.js 
  • 结果如下:

使用nodejs 服务器 实现文件读写操作

  • 输出的结果为二进制但以十六进制数据为表现形式。
  • 解决方法一:
  • 在console.log(data) 上加toString()方法。
  • 代码片段:
console.log(data.toString());
  • 解决方法二:
console.log(data.toString('utf-8'));
  • 完整代码片段:
// 引入操作文件的模板包
// fs 是node平台提供的核心模块,主要用于操作文件

var fileOp = require('fs');

// 从指定文件中读取文件中的内容
// 方法:readFile('文件路径','处理结果的回调函数('错误对象','返回数据??//')')

fileOp.readFile('./practice/w02.txt' ,function(error,data){
	
	// 此处回调函数主要用于返回读取文件时的结果。error代表一个错误对象。
	// 当执行该方法时,会自动调用改回调函数,
	// 当读取文件出现错误时,error:返回一个错误对象,否则返回:null;
	if(error){
		console.log('错误信息:');
		throw error;
		return console.log('内容读取失败!');
	}
	console.log('文件内容如下:');
	console.log(data.toString('utf-8'));
	return console.log('内容读取成功!');
})

  • 解决方法三:
  • 直接在方法中进行声明编码格式:utf-8.
  • 代码片段:
fileOp.readFile('./practice/w02.txt', 'utf-8' ,function(error,data)
  • 完整代码片段:
// 引入操作文件的模板包
// fs 是node平台提供的核心模块,主要用于操作文件

var fileOp = require('fs');

// 从指定文件中读取文件中的内容
// 方法:readFile('文件路径','处理结果的回调函数('错误对象','返回数据??//')')

fileOp.readFile('./practice/w02.txt', 'utf-8' ,function(error,data){
	
	// 此处回调函数主要用于返回读取文件的结果。error代表一个错误对象。
	// 当执行该方法时,会自动调用改回调函数,
	// 当读取文件出现错误时,error:返回一个错误对象,否则返回:null;
	if(error){
		console.log('错误信息:');
		throw error;
		return console.log('内容读取失败!');
	}
	console.log('文件内容如下:');
	console.log(data);
	return console.log('内容读取成功!');
	
})

  • 最终结果如下:
使用nodejs 服务器 实现文件读写操作

注:

官方文档地址:http://nodejs.cn/api/fs.html#fs_fs_readfile_path_options_callback


相关标签: 读写文件