node.js往yaml文件存入对象
时间: 2023-07-07 12:32:23 浏览: 82
要往 YAML 文件中存入 JavaScript 对象,可以使用 `js-yaml` 模块提供的 `dump` 方法将 JavaScript 对象转换为 YAML 格式的字符串,然后使用 Node.js 的 `fs` 模块将字符串写入文件。
以下是一个示例代码:
```js
const fs = require('fs');
const yaml = require('js-yaml');
const objectToSave = {
name: 'John',
age: 30,
hobbies: ['reading', 'music', 'sports']
};
const yamlString = yaml.dump(objectToSave);
fs.writeFileSync('data.yaml', yamlString, 'utf8');
```
这段代码将一个 JavaScript 对象转换为 YAML 格式的字符串,然后使用 Node.js 的 `fs` 模块将字符串写入一个名为 `data.yaml` 的文件中。
如果要往 YAML 文件中追加数据,可以先读取 YAML 文件中的内容,将新的数据加入到 JavaScript 对象中,然后再将整个 JavaScript 对象转换为 YAML 格式的字符串,最后将字符串写入文件中。
以下是一个示例代码:
```js
const fs = require('fs');
const yaml = require('js-yaml');
const existingData = fs.readFileSync('data.yaml', 'utf8');
const existingObject = yaml.load(existingData);
const newData = {
name: 'Alice',
age: 25,
hobbies: ['reading', 'music', 'travel']
};
const newObject = Object.assign({}, existingObject, newData);
const newYamlString = yaml.dump(newObject);
fs.writeFileSync('data.yaml', newYamlString, 'utf8');
```
这段代码首先读取名为 `data.yaml` 的文件中的内容,并使用 `js-yaml` 的 `load` 方法将 YAML 格式的字符串转换为 JavaScript 对象,然后将新的数据加入到 JavaScript 对象中,再将整个 JavaScript 对象转换为 YAML 格式的字符串,最后将字符串写入文件中。
阅读全文