zzl00770

导航

fs模块 写入文章

异步写入(fs.writeFile)
1.语法
    fs.writeFile(file, data[, options], callback)
2.参数说明    
    file:要写入的文件路径。如果路径中没有该文件,则会创建一个文件;如果路径中有该文件,默认会重写文件中的内容。
    data:待写入的数据,可以是字符串或Buffer。
    options:配置项对象,可选参数,包括以下属性:
        encoding:指定写入文件时的字符编码,默认为'utf8'。例如,如果需要以其他编码格式写入文件,可以设置为相应的编码值。
        flag:指定文件操作类型,默认为'w'(写入模式)。常见的取值有:
            'w':写入模式,文件存在则清空后写入,不存在则创建新文件。
            'a':追加模式,在文件末尾追加内容。
            'r':读取模式,不过在写入操作中使用较少。
            'r+':读写模式,打开文件用于读写,文件不存在则尝试创建。
            'wx':排他性写入模式,与'w'类似,但如果文件已经存在,则写入失败。
            'ax':排他性追加模式,与'a'类似,但如果文件已经存在,则追加失败。
        mode:设置文件权限,默认为0o666(八进制),即文件所有者、用户组和其他用户都有读写权限。可以根据需要修改此权限值,例如0o777表示所有用户都有读、写和执行权限。
const fs = require('fs')
let path = '../测试/ceshi.txt'
let data = '你好,nodejs4'
fs.writeFile(path,data,{flag:'a'},err=>{
    if (err) {
        console.log('写入失败!=>'+ err);
        return;
    }else{
        console.log('写入成功');
    }
})

 同步写入 \r\n是回车换行的意思

let path = '../测试/ceshi.txt'
let data = '\r\n你好,nodejs9'
fs.writeFileSync(path, data, { flag: 'a' })

使用流写入

let path = '../测试/ceshi.txt'
//创建可写流
let ws = fs.createWriteStream(path)
//监听事件
ws.on('finish',()=>{
    console.log('文件写入成功');
})

ws.on('error',err=>{
    console.log('写入文件时发生错误:',err);
})
//写入数据并结束流
ws.write('半亩方塘一鉴开\r\n')
ws.write('天光云影共徘徊\r\n')
ws.write('问渠那得清如许\r\n')
ws.write('为有源头活水来\r\n')
ws.close()

  

posted on 2025-03-24 20:57  品味人生nuiapp  阅读(28)  评论(0)    收藏  举报