XmlConvert 是 .NET 中专注 XML 字符串与 CLR 类型安全转换的核心类,严格遵循 W3C XML Schema 标准,支持布尔、整数、日期、浮点等类型双向转换,并提供 XML 名称编码、解码及文本转义功能。
XmlConvert 是 .NET 中用于在 XML 字符串和 .NET 类型之间安全转换的核心类,主要解决 XML 规范与 CLR 类型在格式、范围、精度上的差异问题(比如日期格式、布尔值大小写、数值溢出等)。它不负责解析或生成 XML 文档,而是专注“值级”转换,确保符合 W3C XML Schema 定义。
这是最常用的一组方法,严格按 XML Schema 标准进行解析和格式化:
"true" 或 "false"(区分大小写),不接受 "1"、"0" 或空字符串;对应 ToString(bool) 输出小写形式int 范围会抛 FormatException;不支持十六进制或科学计数法"2025-04-05T14:30:00Z"、"2025-04-05"),不识别中文或自定义格式;ToString(DateTime) 默认输出带时区的完整格式"INF"、"-INF"、"NaN" 等 XML 特殊浮点值,普通数字则按标准格式化用于构造合法的 XML 内容或标识符,避免手动拼接出错:
"my-name" → "my_x002d_name"),适合动态生成元素/属性名、&、" 等做实体编码("a → "a),适用于写入文本节点
对接 XML
Schema 中的 base64Binary 和 hexBinary 类型:
新版增加了对时区偏移和日期精度的显式支持:
RoundTrip(保留原始精度)、Local、Utc 模式DateTimeKind.Unspecified,需自行判断上下文