用Node写入文件

如何使用Node写入文件

在Node.js中写入文件的最简单方法是使用fs.writeFile()API。

例子:

const fs = require('fs')

const content = ‘Some content!’

fs.writeFile(’/Users/flavio/test.txt’, content, (err) => { if (err) { console.error(err) return } //file written successfully })

或者,您可以使用同步版本fs.writeFileSync()

const fs = require('fs')

const content = ‘Some content!’

try { const data = fs.writeFileSync(’/Users/flavio/test.txt’, content) //file written successfully } catch (err) { console.error(err) }

默认情况下,此API将替换文件内容如果它已经存在。

您可以通过指定标志来修改默认值:

fs.writeFile('/Users/flavio/test.txt', content, { flag: 'a+' }, (err) => {})

您可能会使用的标志是

  • r+打开文件进行读写
  • w+打开文件进行读写,将流放在文件的开头。如果不存在则创建文件
  • a打开文件进行写入,将流放在文件末尾。如果不存在则创建文件
  • a+打开文件进行读写,将流放在文件末尾。如果不存在则创建文件

(您可以在以下位置找到更多标志https://nodejs.org/api/fs.html#fs_file_system_flags

附加到文件

将内容附加到文件末尾的简便方法是fs.appendFile()(及其fs.appendFileSync()对应对象):

const content = 'Some content!'

fs.appendFile(‘file.log’, content, (err) => { if (err) { console.error(err) return } //done! })

使用流

所有这些方法都将全部内容写入文件,然后再将控件返回给程序(在异步版本中,这意味着执行回调)

在这种情况下,更好的选择是使用流写入文件内容。

免费下载我的Node.js手册


更多节点教程: