YStudio Y++

XML支持库

Y++ / YStudio 开发文档 · 一点滴

扁平命令式支持库(不是类)。路径:支持库 → XML支持库 → XML操作

快速开始(可创建)

函数 主窗口.创建完毕 () {
    整数 h = XML_创建 ("配置")
    XML_添加子节点 (h, "配置", "项")
    XML_置属性 (h, "配置/项", "名", "a")
    XML_置节点文本 (h, "配置/项", "1")
    XML_写文件 (h, "out.xml")   // 大文件极速 UTF-8 落盘
    XML_释放 (h)
}

读已有文件:

整数 h = XML_读文件 ("窗口/主窗口/主窗口.xml")  // 极速 UTF-8
输出 (XML_取属性 (h, "窗口", "宽度"))
输出 (XML_取子节点数 (h, "窗口/控件"))
XML_释放 (h)

大文件

  • XML_读文件 / XML_写文件:UTF-8 二进制读写,跳过整文件宽字符往返
  • 大文件不要先 读文件XML_解析;落盘用 XML_写文件,不要靠 XML_到文本 + 写文本

路径

  • / 分隔;可写根标签;同名兄弟用 [索引](从 0 起);空路径=根

命令一览

命令 返回 说明
XML_创建(根标签) 整数句柄 从零创建
XML_解析(文本) 整数句柄 解析内存文本
XML_读文件(路径) 整数句柄 极速读 UTF-8
XML_写文件(句柄, 路径) 逻辑 极速写 UTF-8
XML_添加子节点(句柄, 父路径, 标签) 整数索引 末尾追加,失败 -1
XML_插入子节点(句柄, 父路径, 索引, 标签) 整数索引 插入
XML_删除节点(句柄, 路径) 逻辑 不可删根
XML_取子节点数 / XML_取子节点名 整数/文本 枚举子节点
XML_节点是否存在 / XML_取标签名 逻辑/文本 查询
XML_取/置节点文本 文本/逻辑 节点文本
XML_取/置/删除属性 文本/逻辑 属性
XML_到文本 / XML_释放 / XML_取错误 序列化与收尾