Node.js文件的基本操作快速入门

15 篇文章 0 订阅

 

写入文件:(异步)

fs.writeFile(file, data[, options], callback)

默认为w模式,会覆盖到文件里面的原文

 

源码:

 

参数1:文件路径

参数2:写入数据

参数3:以key-value方式写入,分别为flag:写入方式  encoding:编码方式 mod:权限

参数4:回调函数,常常用来处理报错信息

 

 

实例:

var fs = require('fs');
var str = '有些失望是不可避免的,但大部分的失望,都因为你高估了自己。';
fs.writeFile('E:/for_file/5.txt',str,{flag:'a'},function (e) {
   if(e){
       return console.error(e);
   }
});

 

运行结果:

 

关闭文件:(异步)

fs.close(fd, callback)

关闭通过fs.open()打开的文件

fd是fs.open()函数返回的文件句柄,callback为回调函数,无参数。

 

实例:

var fs = require('fs');
fs.open('E:/for_file/6.txt','r',function (e,fd) {
    if(e){
        return console.error(e);
    }
    fs.close(fd,function () {
        console.log('关闭文件');
    });
});

 

运行结果:

 

 

读取文件

源码:

 

fd是fs.open()返回的文件句柄

buffer是读取后写入的缓冲区对象

offset缓冲区写入的偏移量

length:读取字节数

position:文件读取的起始位置(默认从文件指针读起)

回调函数,三个参数:err,bytesRead(读取字节数),buffer(缓冲区对象)

 

实例:

var fs = require('fs');
var buf = new Buffer.alloc(1024*1);
fs.open('E:/for_file/6.txt','r',function (e,fd) {
    if(e){
        return console.error(e);
    }
    fs.read(fd,buf,0,buf.length,null,function (err,num,buff) {
        if(err){
            return console.error(err);
        }
        if(num>0){
            console.log(buff.toString());
        }
    });
    fs.close(fd,function () {
        console.log('关闭文件');
    });
});



fs.ftruncate(fd, len, callback)

截取文件部分内容,len为截取长度,callback无参数

对文件的操作为,截取文件前len的内容,即删去len后面的内容。

实例:

var fs = require('fs');
var buf = new Buffer.alloc(1024*1);
fs.open('E:/for_file/6.txt','r+',function (e,fd) {
    if (e) {
        return console.error(e);
    }

    fs.ftruncate(fd,5, function (err) {
        if (err) {
            return console.error(err);
        }
        fs.read(fd, buf, 0, buf.length, 0, function (e, num) {
            if (e) {
                return console.error(e);
            }
            if (num > 0) {
                console.log('hello');
                console.log(buf.toString());
            }
            fs.close(fd, function (e) {
                if (e) {
                    return console.error(e);
                }
            })
        });
    });
});

 

 

运行结果:

 

 

 

删除文件

fs.unlink(path, callback)

类似为unix的思想,具体可以看其他博文了解

Path:文件路径

Callback:回调函数,无参数

 

实例:

var fs = require('fs');
fs.unlink('E:/for_file/5.txt',function (e) {
    if(e){
        console.log(e);
    }
});

 

创建文件夹

fs.mkdir(path[, mode], callback)

 

path:文件夹路径

mode:即权限,默认为全部权限开放,具体内容,可了解unix的文件系统的权限问题

callback:回调函数,无参数

 

实例:

var fs = require('fs');
fs.unlink('E:/for_file/5.txt',function (e) {
    if(e){
        console.log(e);
    }
});

 

运行结果:

 

 

读取目录

fs.readdir(path, callback)

path:读取文件夹路径

option:编码方式,默认为空。(不建议使用)

callback:返回两个参数,err和files(文件)

 

实例:

var fs = require('fs');
var con = fs.readdir('E:/for_file','utf8',function (e,file) {
    if(e){
        return console.error(e);
    }
    console.log(file);
});

运行结果:

 

 

删除文件夹

fs.rmdir(path, callback)

path:文件路径

callback:回调函数,无参数

 

实例:

var fs = require('fs');
fs.rmdir('E:/for_file/hope',function (e) {
    if(e){
        return console.error(e);
    }
});

其他常用函数浏览:

序号

方法 & 描述

1

fs.rename(oldPath, newPath, callback)
异步 rename().回调函数没有参数,但可能抛出异常。

2

fs.ftruncate(fd, len, callback)
异步 ftruncate().回调函数没有参数,但可能抛出异常。

3

fs.ftruncateSync(fd, len)
同步 ftruncate()

4

fs.truncate(path, len, callback)
异步 truncate().回调函数没有参数,但可能抛出异常。

5

fs.truncateSync(path, len)
同步 truncate()

6

fs.chown(path, uid, gid, callback)
异步 chown().回调函数没有参数,但可能抛出异常。

7

fs.chownSync(path, uid, gid)
同步 chown()

8

fs.fchown(fd, uid, gid, callback)
异步 fchown().回调函数没有参数,但可能抛出异常。

9

fs.fchownSync(fd, uid, gid)
同步 fchown()

10

fs.lchown(path, uid, gid, callback)
异步 lchown().回调函数没有参数,但可能抛出异常。

11

fs.lchownSync(path, uid, gid)
同步 lchown()

12

fs.chmod(path, mode, callback)
异步 chmod().回调函数没有参数,但可能抛出异常。

13

fs.chmodSync(path, mode)
同步 chmod().

14

fs.fchmod(fd, mode, callback)
异步 fchmod().回调函数没有参数,但可能抛出异常。

15

fs.fchmodSync(fd, mode)
同步 fchmod().

16

fs.lchmod(path, mode, callback)
异步 lchmod().回调函数没有参数,但可能抛出异常。Only available on Mac OS X.

17

fs.lchmodSync(path, mode)
同步 lchmod().

18

fs.stat(path, callback)
异步 stat(). 回调函数有两个参数 err, statsstats fs.Stats 对象。

19

fs.lstat(path, callback)
异步 lstat(). 回调函数有两个参数 err, statsstats fs.Stats 对象。

20

fs.fstat(fd, callback)
异步 fstat(). 回调函数有两个参数 err, statsstats fs.Stats 对象。

21

fs.statSync(path)
同步 stat(). 返回 fs.Stats 的实例。

22

fs.lstatSync(path)
同步 lstat(). 返回 fs.Stats 的实例。

23

fs.fstatSync(fd)
同步 fstat(). 返回 fs.Stats 的实例。

24

fs.link(srcpath, dstpath, callback)
异步 link().回调函数没有参数,但可能抛出异常。

25

fs.linkSync(srcpath, dstpath)
同步 link().

26

fs.symlink(srcpath, dstpath[, type], callback)
异步 symlink().回调函数没有参数,但可能抛出异常。 type 参数可以设置为 'dir', 'file', 'junction' (默认为 'file')

27

fs.symlinkSync(srcpath, dstpath[, type])
同步 symlink().

28

fs.readlink(path, callback)
异步 readlink(). 回调函数有两个参数 err, linkString

29

fs.realpath(path[, cache], callback)
异步 realpath(). 回调函数有两个参数 err, resolvedPath

30

fs.realpathSync(path[, cache])
同步 realpath()。返回绝对路径。

31

fs.unlink(path, callback)
异步 unlink().回调函数没有参数,但可能抛出异常。

32

fs.unlinkSync(path)
同步 unlink().

33

fs.rmdir(path, callback)
异步 rmdir().回调函数没有参数,但可能抛出异常。

34

fs.rmdirSync(path)
同步 rmdir().

35

fs.mkdir(path[, mode], callback)
S异步 mkdir(2).回调函数没有参数,但可能抛出异常。 mode defaults to 0777.

36

fs.mkdirSync(path[, mode])
同步 mkdir().

37

fs.readdir(path, callback)
异步 readdir(3). 读取目录的内容。

38

fs.readdirSync(path)
同步 readdir().返回文件数组列表。

39

fs.close(fd, callback)
异步 close().回调函数没有参数,但可能抛出异常。

40

fs.closeSync(fd)
同步 close().

41

fs.open(path, flags[, mode], callback)
异步打开文件。

42

fs.openSync(path, flags[, mode])
同步 version of fs.open().

43

fs.utimes(path, atime, mtime, callback)
 

44

fs.utimesSync(path, atime, mtime)
修改文件时间戳,文件通过指定的文件路径。

45

fs.futimes(fd, atime, mtime, callback)
 

46

fs.futimesSync(fd, atime, mtime)
修改文件时间戳,通过文件描述符指定。

47

fs.fsync(fd, callback)
异步 fsync.回调函数没有参数,但可能抛出异常。

48

fs.fsyncSync(fd)
同步 fsync.

49

fs.write(fd, buffer, offset, length[, position], callback)
将缓冲区内容写入到通过文件描述符指定的文件。

50

fs.write(fd, data[, position[, encoding]], callback)
通过文件描述符 fd 写入文件内容。

51

fs.writeSync(fd, buffer, offset, length[, position])
同步版的 fs.write()

52

fs.writeSync(fd, data[, position[, encoding]])
同步版的 fs.write().

53

fs.read(fd, buffer, offset, length, position, callback)
通过文件描述符 fd 读取文件内容。

54

fs.readSync(fd, buffer, offset, length, position)
同步版的 fs.read.

55

fs.readFile(filename[, options], callback)
异步读取文件内容。

56

fs.readFileSync(filename[, options])<="" td="">

57

fs.writeFile(filename, data[, options], callback)
异步写入文件内容。

58

fs.writeFileSync(filename, data[, options])
同步版的 fs.writeFile

59

fs.appendFile(filename, data[, options], callback)
异步追加文件内容。

60

fs.appendFileSync(filename, data[, options])
The 同步 version of fs.appendFile.

61

fs.watchFile(filename[, options], listener)
查看文件的修改。

62

fs.unwatchFile(filename[, listener])
停止查看 filename 的修改。

63

fs.watch(filename[, options][, listener])
查看 filename 的修改,filename 可以是文件或目录。返回 fs.FSWatcher 对象。

64

fs.exists(path, callback)
检测给定的路径是否存在。

65

fs.existsSync(path)
同步版的 fs.exists.

66

fs.access(path[, mode], callback)
测试指定路径用户权限。

67

fs.accessSync(path[, mode])
同步版的 fs.access

68

fs.createReadStream(path[, options])
返回ReadStream 对象。

69

fs.createWriteStream(path[, options])
返回 WriteStream 对象。

70

fs.symlink(srcpath, dstpath[, type], callback)
异步 symlink().回调函数没有参数,但可能抛出异常。

 

node.js创建服务器和npm基本操作

REPL和回调函数

node.js——绑定事件

node.js——error事件、缓冲区操作

node.js——缓冲区操作

node.js——流的操作

node.js——模块系统和函数​​​​​​​

node.js——路由​​​​​​​

node.js——全局对象​​​​​​​

node.js对文件的操作​​​​​​​​​​​​​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值