node比客户端浏览器的js强的地方之一就是他的文件操作模块,可以直接对系统的文件进行操作

再打开来看下是否发生了变化,由此可见node的强大的地方了。。

实际代码如下所示:

/**
* Created by leigood on 2016/8/30.
*/
var fs = require('fs');
var exec = require('child_process').exec; //打开
var data = fs.readFileSync('day.txt','utf-8');
//console.log(data); //复制文件
//exec('copy day.txt day2.txt'); //修改文件名
//fs.rename('day2.txt','delete.txt'); //修改文件内容
//fs.open(path, flags, [mode], [callback(err,fd)])
//'r' - 以读取模式打开文件。
//'r+' - 以读写模式打开文件。
//'rs' - 使用同步模式打开并读取文件。指示操作系统忽略本地文件系统缓存。
//'rs+' - 以同步的方式打开,读取 并 写入文件。
//注意:这不是让fs.open变成同步模式的阻塞操作。如果想要同步模式请使用fs.openSync()。
//
//'w' - 以读取模式打开文件,如果文件不存在则创建
//'wx' - 和 ' w ' 模式一样,如果文件存在则返回失败
//'w+' - 以读写模式打开文件,如果文件不存在则创建
//'wx+' - 和 ' w+ ' 模式一样,如果文件存在则返回失败
//
//'a' - 以追加模式打开文件,如果文件不存在则创建
//'ax' - 和 ' a ' 模式一样,如果文件存在则返回失败
//'a+' - 以读取追加模式打开文件,如果文件不存在则创建
//'ax+' - 和 ' a+ ' 模式一样,如果文件存在则返回失败
//mode 用于创建文件时给文件制定权限,默认0666
fs.open('day.txt','a',function(err,con){
if(err){
throw err;
}
var data = "welcome leigood fs";
fs.write(con,data,function(err,bytesWritten,buffer){
if(err){
throw err;
}
console.log(bytesWritten);
console.log(buffer);
//这下面的错误主要是预防多个人同时打开同一个文件造成影响
fs.close(con,function(err){
if(err){
throw err;
}
console.log('file close');
});
});
});

夺命雷公狗---node.js---12之fs模块文件的操作的更多相关文章

  1. 夺命雷公狗---DEDECMS----31dedecms数据库创建一张表完成curl操作

    首先我们创建一张测试表,格式如下所示: 然后我们还是在plus目录下创建一个test3.php进行测试,首先写一个添加的: <?php header("Content-Type:tex ...

  2. 夺命雷公狗---node.js---4net模块(上)

    node.js为我们提供了一个net模块,主要是为了提供了一些底层通信的小工具,包含了创建服务器/客户端方法,引入方式也很简单: var net = require('net'); net模块也为我们 ...

  3. 夺命雷公狗---node.js---3commonJs 与 nodeJs的简介

    JavaScript是一个强大面向对象语言,它有很多快速高效的解释器.官方JavaScript标准定义的API是为了构建基于浏览器的应用程序.然而,并没有定于一个用于更广泛的应用程序的标准库. Com ...

  4. 夺命雷公狗---node.js---7fs模块初步

    目录结构如下所示: /** * Created by leigood on 2016/8/13. */ var http = require("http"); var fs = r ...

  5. node.js 中的 fs (文件)模块

    记录 fs 模块的方法及使用 1. fs.stat 获取文件大小,创建时间等信息 // 引入 fs 模块 const fs = require('fs'); fs.stat('01.fs.js', ( ...

  6. 夺命雷公狗---node.js---2node.js中的npm的常用命令

    npm install <name> 安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本 ...

  7. 夺命雷公狗---node.js---9实现页面的跳转

    废话不多说,我们先来看看项目的文件结构,如下所示: 然后我们创建一个index.js的文件让他来做端口监听,代码如下所示: var http = require('http'); var fs = r ...

  8. 夺命雷公狗---node.js---11之文件上传

    我们在做文件上传前需要用npm来安装一个插件先, 首先打开项目所在的目录,然后按住shift键然后右键鼠标进入命令行安装formidable 然后开始编写上传的静态页面: <!DOCTYPE h ...

  9. 夺命雷公狗---node.js---10之POST的接收

    首先我们在项目下创建一个表单,代码如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta ...

随机推荐

  1. ArcGIS API for Silverlight 调用GP服务绘制等值面

    原文:ArcGIS API for Silverlight 调用GP服务绘制等值面 GP服务模型如下图: 示例效果图片如下:

  2. magento email模板设置相关

    magento后台 可以设置各种各样的邮件,当客户注册.下单.修改密码.邀请好友等等一系列行为时,会有相关信息邮件发出. 进入magento后台,System > Transactional E ...

  3. Java学习-029-JSON 之三 -- 模仿 cssSelector 封装读取 JSON 数据方法

    前文简单介绍了如何通过 json-20141113.jar 提供的功能获取 JSON 的数据,敬请参阅:Java学习-028-JSON 之二 -- 数据读取. 了解学习过 JQuery 的朋友都知道, ...

  4. 怎么使用git来管理项目版本?

    怎么使用git来管理项目版本和存放代码? 作者:rongfangliu 转载请注明出处:http://www.cnblogs.com/rongfangliu/p/howuseGit.html 工具: ...

  5. Using dbms_shared_pool.purge to remove a single task from the library cache

    我们都知道可是使用 alter system flush shared_pool 来清除shared pool 信息,当时不能指定清除某个对象.因为在系统繁忙的时侯 使用 alter system f ...

  6. Nested transactions in stored procedure of SQLServer

    question: if the nested transaction encountered an exception, then rollbacked. How about the outer t ...

  7. JQuery:JQuery设置HTML

    JQuery:设置HTML1.Query - 设置内容和属性设置内容 - text().html() 以及 val()我们将使用前一章中的三个相同的方法来设置内容: text() - 设置或返回所选元 ...

  8. mkdir

    1,mkdir Problem: You want to use the mkdir() function from the sys/stat.h POSIX header, but you don’ ...

  9. 第一篇 Replication:复制简介

    本篇文章是SQL Server Replication系列的第一篇,详细内容请参考原文. 复制这个词来自拉丁语中的"replicare",意味着重复.Replication des ...

  10. 第七篇 SQL Server代理作业活动监视器

    本篇文章是SQL Server代理系列的第七篇,详细内容请参考原文 在这一系列的上一篇,你创建并配置SQL Server代理作业.每个作业有一个或多个步骤,可能包含大量的工作流.在这篇文章中,将查看作 ...