XmlConvert 是 .NET 中专注 XML 字符串与 CLR 类型安全转换的核心类,严格遵循 W3C XML Schema 标准,支持布尔、整数、日期、浮点等类型双向转换,并提供 XML 名称编码、解码及文本转义功能。

XmlConvert 是 .NET 中用于在 XML 字符串和 .NET 类型之间安全转换的核心类,主要解决 XML 规范与 CLR 类型在格式、范围、精度上的差异问题(比如日期格式、布尔值大小写、数值溢出等)。它不负责解析或生成 XML 文档,而是专注“值级”转换,确保符合 W3C XML Schema 定义。
字符串与基础类型互转
这是最常用的一组方法,严格按 XML Schema 标准进行解析和格式化:
-
ToBoolean(string):只接受
"true"或"false"(区分大小写),不接受"1"、"0"或空字符串;对应 ToString(bool) 输出小写形式 -
ToInt32(string) 和 ToString(int):支持带符号十进制整数,超出
int范围会抛FormatException;不支持十六进制或科学计数法 - ToDateTime(string):严格解析 ISO 8601 格式(如
"2023-04-05T14:30:00Z"、"2023-04-05"),不识别中文或自定义格式;ToString(DateTime) 默认输出带时区的完整格式 -
ToDouble(string) 和 ToString(double):支持
"INF"、"-INF"、"NaN"等 XML 特殊浮点值,普通数字则按标准格式化
处理 XML 特殊字符与名称
用于构造合法的 XML 内容或标识符,避免手动拼接出错:
十天学会易语言图解教程用图解的方式对易语言的使用方法和操作技巧作了生动、系统的讲解。需要的朋友们可以下载看看吧!全书分十章,分十天讲完。 第一章是介绍易语言的安装,以及运行后的界面。同时介绍一个非常简单的小程序,以帮助用户入门学习。最后介绍编程的输入方法,以及一些初学者会遇到的常见问题。第二章将接触一些具体的问题,如怎样编写一个1+2等于几的程序,并了解变量的概念,变量的有效范围,数据类型等知识。其后,您将跟着本书,编写一个自己的MP3播放器,认识窗口、按钮、编辑框三个常用组件。以认识命令及事件子程序。第
-
EncodeName(string):把任意字符串转为合法的 XML 名称(如将
"my-name"→"my_x002d_name"),适合动态生成元素/属性名 - DecodeName(string):逆向还原编码后的名称
-
Escape(string):对文本内容中的
、&、"等做实体编码("a →"a),适用于写入文本节点 - Unescape(string):解码已编码的文本(如从 XML 读取后还原)
字节数组与 Base64 / Hex 转换
对接 XML Schema 中的 base64Binary 和 hexBinary 类型:
- ToBase64(byte[]) 和 ToHex(byte[]):将字节数组转为标准 Base64 或十六进制字符串(无前缀、全小写)
- FromBase64(string) 和 FromHex(string):严格校验输入格式,非法字符或长度错误直接抛异常
时区与精度控制(.NET 5+ 增强)
新版增加了对时区偏移和日期精度的显式支持:
-
ToString(DateTime, XmlDateTimeSerializationMode):可指定
RoundTrip(保留原始精度)、Local、Utc模式 - ToDateTime(string, XmlDateTimeSerializationMode):配合字符串解析,明确时区处理逻辑
- 所有时间方法默认使用
DateTimeKind.Unspecified,需自行判断上下文









