ColdFusion原生支持XML处理,核心是创建/解析结构及读写内容与属性;可用cfxml标签定义静态XML或xmlNew()动态构建,读取用xmlParse(),修改后toString()保存,务必用xmlFormat()转义和charset="utf-8"编码。
ColdFusion 处理和生成 XML 很直接,核心就两件事:创建/解析结构 + 读写内容与属性。不用额外库,原生支持足够应付大多数场景,比如导出数据、对接 API(如 QuickBooks)、动态配置或图片列表管理。
直接写 XML 字符串,自动解析为 ColdFusion XML 对象:
John Doe
john@example.com
变量 myxml 就是可操作的 XML 对象,后续能用点语
法访问节点,比如 myxml.root.person[1].name.xmltext。
关键步骤:新建文档 → 设根节点 → 创建子节点 → 设置文本/属性 → 追加到父节点。
创建空 XML 文档 指定根元素 新建子节点 添加属性 写文本内容(务必用 xmlFormat 防止特殊字符破坏格式) 把节点加进根下循环数据库查询结果时,就在这套逻辑里套 for 循环,每条记录生成一个节点。
先用 或 加载文件。
然后可以:
xmlObj.imgList.list[1].xmlAttributes.path
xmlSearch(xmlObj, "//list") 查所有 list 节点(XPath 支持基础路径)toString(xmlObj) 转成字符串 保存回去注意:ColdFusion 的 XML 对象是“活”的,改了属性或子节点,toString() 就会反映最新结构。
生成的 XML 如果含中文、引号、& 等,不处理会解析失败。
xmlFormat()
charset="utf-8",比如:
遇到 “解析失败:输入不正确,UTF-8” 错误,八成是源数据混了 Windows-1252 字符(比如 Word 粘贴的破折号),得先清理或强制转码。
基本上就这些。不复杂但容易忽略 xmlFormat 和 charset,踩过坑就知道它们多关键。