美文网首页
node文件读写操作

node文件读写操作

作者: 似朝朝我心 | 来源:发表于2020-11-03 19:48 被阅读0次

    1.文件的读操作。

    • 浏览器中的JavaScript是没有文件操作能力的,但是Node中的JavaScript具有文件操作的能力。
    • fs是file-system的简写,就是文件系统的意思,在node中如果想要进行文件操作,就必须引入fs这个核心模块。
    • 在fs这个核心模块中,就提供了所有的文件操作相关的API,例如:fs.readFile 就是用来读取文件的。
    • 使用require引入方法加载fs核心模块。
    const fs = require('fs')
    
    • 读取文件(第一个参数就是要读取文件的路径,第二个参数是一个回调函数)。
      回调函数接收2个参数,分别是error和data。
      error:
      如果读取失败,error就是错误对象。
      如果读取成功,error就是 undefind,没有数据。
      data:
      如果读取成功,data就是读取到的数据。
      如果读取失败,error就是错误对象。

      此外,我们还可以通过判断error来确认是否有错误发生。
    const fs = require('fs')
    fs.readFile('README.md', (error, data) => {
        if (error) {
            console.log('文件读写失败了!')
        }else {
            console.log('data')
        }
        //另外一种报错方式。
        // if (!error) {
        //     console.log(data)
        // }
    })
    

    这一长串 <Buffer 57 65 6c 63 6f 6d 65 20 74 6f 20 63 6f 6d 69 6e 67> 到底是啥?

    注意,这一行东西并不是乱码,文件中存储的其实都是二进制数据0和1,那么这里为什么看到的不是0和1呢?反而看到的是Buffer引出的一串不可读的数字,原因是二进制转为了16进制了。

    但是无论是2进制还是16进制,都是不可读的,所以我们需要通过toString()方法把其转为我们能认识的字符。

    const fs = require('fs')
    fs.readFile('README.md', (error, data) => {
        console.log(data.toString());
    })
    

    2.文件的写操作。

    使用 fs.writeFile()方法。

    • 第一个参数是写入的路径,你要将内容写入到哪里去?
    • 第二个参数是你要写入的相关信息的内容。
    • 第三个参数是一个回调函数。
      回调函数里面接收一个error参数。

    成功:
    文件写入成功。
    error 是 null。
    失败:
    文件写入失败。
    error 就是错误对象。


    严谨一定的写法如下:
    fs.writeFile('hello.txt', '落霞与孤鹜齐飞,秋水共长天一色。', err => {
        if (error) {
            console.log("文件写入失败!")
        }else {
            console.log('文件写入成功!')
        }
    })
    

    相关文章

      网友评论

          本文标题:node文件读写操作

          本文链接:https://www.haomeiwen.com/subject/rusivktx.html