打开文件:

fs.open(path, flags[, mode], callback)

path: 要打开的文件的路径

flags: 文件打开的行为

解析:

r 读取

w 写入并删除原内容

+

r+ 可读取可写入(若目标文件不存在报错)

w+ 可读取可写入(若目标文件不存在新建)

a+ 可读取可追加(若目标文件不存在新建)

a追加(不删除原内容)

x独占模式

callback: 回调函数,两个参数(err, fd)

fd: 文件描述符

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

读取:

方法一: fs.read(fd, buffer, offset, length, position, callback(err, bytesRead, buffer))

功能: 读取并写入buffer

fd: 文件描述符

buffer: 要写入的buffer

offset: 写入bufffer的起始位置

length: 写入buffer的长度,也是读取长度

position: 读取位置,为null时为当前为本指针位置

方法二: fs.readFile(path, [,encoding], callback(err, data))

功能: 读取,简化的读取文件方法,不需要事先open,也不需要close,整个读取

encoding: 指定读取时的编码方式,为空的情况下以buffer的形式返回

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

写入:

方法一: fs.write

1.写入buffer: fs.write(fd, buffer, offset, length,[, position], callback(err, bytesRead, buffer))

----------------------------------------对象--------------目标--------------------------------------

buffer: 可写入buffer

offset: 要写入的buffer的起始位置

length: 要写入的buffer的长度,数字类型,以字节为单位

position: 写入的对象的位置,为null时为当前文件指针的位置(仅对w有效,其默认位置为0, 对a无效,无论数字,多少都是从最后追加,不可不填)

callback:三个参数(err, bytesRead, buffer)

bytesRead: 写入的字节数

buffer: 写入的buffer

2.写入string时:fs.write(fd, str,[,postion][, encoding], callback(err, written, str))

str: 写入的字符串

encoding: 以什么样的编码方式写入

callback 有3个参数(err, written, string)

written: 写入的字节数

str: 写入的字符串

方法二: fs.writeFile(fileName, buffer/str, [options], [callback(err)])

1.写入buffer时: fs.writeFile(fileName, buffer, callback(err))

2.写入string时: fs.writeFile(fileName, str, [options], [callback(err)])

options包括:

encoding:编码方式默认utf-8

flag:默认w

mode: 文件读取权限,默认438

eg: options = { encoding: 'utf8', mode: 438, flag: 'w' };

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

关闭:

fs.close(fd, callback(err))

回调函数没有参数

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

截取:

fs.ftruncate(fd, len, callback(err))

len: 从目标文件的起始位置开始,以字节为单位截取,大于len的字符串会被删除

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

删除:

fs.unlink(path, callback(err))

删除目标文件

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

												

fs模块主要功能小解的更多相关文章

  1. nodejs模块——fs模块

    fs模块用于对系统文件及目录进行读写操作. 一.同步和异步 使用require('fs')载入fs模块,模块中所有方法都有同步和异步两种形式. 异步方法中回调函数的第一个参数总是留给异常参数(exce ...

  2. node.js系列笔记之fs模块《二》

    一:感触 最近工作比较忙,感觉也比较多,因为工作上的不顺利,再加上加班比较多,所以最近心情不是很好,再加上英语能力差到不行,所以最近半个月学习进度也比较慢, 但还是告诉自己每天都坚持学一点,即使今天心 ...

  3. Node.js 文件系统fs模块

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

  4. nodejs入门API之fs模块

    fs模块下的类与FS常量 fs模块下的主要方法 fs的Promise API与FileHandle类 一.fs模块下的类 1.1 fs.Dir:表示目录流的类,由 fs.opendir().fs.op ...

  5. node.js入门学习(一)环境安装,REPL,fs模块,path模块,http模块

    一.node.js介绍 1.1.node.js是什么 官网首页总结:Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时. 1)node.js是一个开发平台,就像j ...

  6. Node学习(二) --使用http和fs模块实现一个简单的服务器

    1.创建一个www目录,存储静态文件1.html.1.jpg. * html文件内容如下: 12345678910111213 <html lang="en">< ...

  7. nodejs中的fs模块中的方法

    nodejs中的fs模块 引入模块 const fs =require("fs") 检测文件是否存在fs.stat(path,callback) fs.stat("./n ...

  8. Smart3D系列教程3之 《论照片三维重建中Smart3D几个工作模块的功能意义》

    [摘要] 近年来,倾斜摄影测量技术是国际测绘遥感领域近年发展起来的一项高新技术,利用照片进行三维重建成为一项关键性的技术.Smart3D软件,是照片三维重建主流软件之一,本文将就Smart3D建模软件 ...

  9. Atitit 软件项目非法模块与功能的管理与  监狱管理的对比 原理与概论attilax总结

    Atitit 软件项目非法模块与功能的管理与  监狱管理的对比 原理与概论attilax总结 软件项目中的非法模块非法功能非法分子与人类中的非法分子很是相似,必须要建议不同的的约束管理标准化... 软 ...

随机推荐

  1. jquery轻松实现li标签上下滚动的原理

    在网站上我们常看到有滚动的文字或者图片,比如消息提醒,新闻列表,等等.那么这些效果是怎么形成的呢?经过查阅,找到一种十分方便的写法,经过改良,得出我自己的终极版滚动效果. 我先写个布局吧 <di ...

  2. javascript variables 变量

    一,调试方法: 1.document.write();       直接在网页中显示. 2.alert();                       弹窗显示. 3.console.       ...

  3. 导入导出Excel的Java工具类ExcelUtil

    在编写ExcelUtil之前,在网上查了一些资料.java中用来处理Excel的第三方开源项目主要就是POI和JXL.poi功能强大,但是比较耗资源,对于大数据量的导入导出性能不是太好:jxl功能简单 ...

  4. extjs 6.2 helloworld

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 一个JQuery发送ajax请求

    环境: 1.jQuery v2.1.1 2.ThinkPHP 3.2.3 HTML页面: <button type="button" id="cat" o ...

  6. setAction方法 Snackbar 右侧按钮可以被点击并处理一些事件

    从数据库同一记录取得的字段所组装成的对象应该是同一个对象,然后由不同的Session从数据库同一条记录上分别取得对象,它们的内存地址是不一样的. 一般来说,常见的数字加密方式都可以分为两类,即对称加密 ...

  7. IOS APP 国际化(实现不跟随系统语言,不用重启应用,代码切换stroyboard ,xib ,图片,其他资源)

    http://www.cnblogs.com/tangbinblog/p/3898046.html

  8. Design Pattern——单一职责原理

    在类的职责分离上多考虑,做到单一职责,这样的代码才能做到易于维护,易扩展,灵活多样.

  9. 本地缓存FMDB的使用(iOS)

    一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来更加面向对象,省去了很多麻烦.冗余的C ...

  10. 纯 CSS 实现三角形尖角箭头的实例

    上次无意中发现了个使用纯 CSS 实现三角形尖角箭头的方法 http://blog.csdn.net/zhouzme/article/details/18901943 ,但没有怎么用上,也没有详细完整 ...