十八比特 十八比特
⚡ 18bit DNS (opens new window)
🏠 主页
  • 🌐 网站
  • 📦 资源
  • 📝 教程
  • 📐 制表符
  • 🗃️ 分类
  • 🏷️ 标签
  • 🗄️ 归档
📃 文章日志
ℹ️ 关于

十八比特

风带来故事的种子,时间使之发芽
⚡ 18bit DNS (opens new window)
🏠 主页
  • 🌐 网站
  • 📦 资源
  • 📝 教程
  • 📐 制表符
  • 🗃️ 分类
  • 🏷️ 标签
  • 🗄️ 归档
📃 文章日志
ℹ️ 关于
  • 技术文档

  • 技术教程

  • Git工具

  • Nodejs

    • npm和yarn全局安装及缓存路径修改
    • Nodejs读写yaml文件
      • 安装依赖
      • 使用方法
  • Linux安全

  • 技术
  • Nodejs
秋澪冬安
2022-11-20
目录

Nodejs读写yaml文件

前言

通过安装 yaml 模块,实现在Nodejs中读写yaml文件,能够修改、删除、添加yaml文件内容,并且能让修改后的文件的格式、排版不会变乱,注释不会消失

# 安装依赖

安装 yaml 依赖

npm install yaml

# 使用方法

假如有一个 yaml 文件为 file.yml,内容如下:

# 注释1
test1: 测试文本1 # 注释1.1
test2: 测试文本2
test3: 测试文本3

# 注释2
a:
  a1: 我是a1 # 注释2.1
  a2: 我是a2
  a3: 我是a3

# 注释3
b:
  - 我是b1 # 注释3.1
  - 我是b2
  - 我是b3

使用方法的代码如下:

import fs from "fs";
import { parseDocument } from "yaml";

// 读取文件
const file = fs.readFileSync("./file.yml", "utf8");
const doc = parseDocument(file);

// 读取内容
console.log(doc.get("test1"));          // 输出为:测试文本1
console.log(doc.getIn(["a", "a1"]));    // 输出为:我是a1
console.log(doc.getIn(["b", 0]));       // 输出为:我是b1

// 修改内容
doc.set("test2", "测试文本2,我被修改啦");
doc.setIn(["a", "a2"], "我是a2,我被修改啦");
doc.setIn(["b", 1], "我是b2,我被修改啦");

// 添加内容
doc.add({ key: "test4", value: "测试文本4" });
doc.addIn(["a", "a4"], "我是a4");
doc.addIn(["b", 3], "我是b4");

// 删除内容
doc.delete("test4");
doc.deleteIn(["a", "a4"]);
doc.deleteIn(["b", 3]);

// 转换成字符串,将修改后的内容写入文件
fs.writeFileSync("./file.yml", doc.toString());

官方文档 ---> Collections (opens new window)

#Nodejs#yaml#JavaScript
上次编辑: 2024/08/30, 16:21:31

← npm和yarn全局安装及缓存路径修改 Linux安全-端口管理→

最近更新
01
SSH跳板机访问内网服务
06-16
02
GPG 导出导入命令
06-16
03
从零开始的 All In One
06-14
更多文章>
Theme by Vdoing | Copyright © 2020-2025 十八比特 | 蜀ICP备2022002410号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式