[记]在rust中使用xml,xml的序列化与反序列化

发布时间 2023-12-28 11:32:56作者: 戳人痛处

在rust中有好几个xml库,但我个人比较推荐的是quick_xml库,这个库的序列化和反序列化使用体验比较好。

启用quick_xml的feature

quick-xml = { version = "0.31.0",features=["serde","serialize"] }
serde = {version="1.0",features=["derive"]}

qucik_mxl的宏体验

依靠强大的宏,quick_xml使用结构体和枚举即可实现xml结构的一一对应。
标签内属性使用宏进行标记

pub struct CalibrationData{
    #[serde(rename = "@xmlns:xsi")]
    xmlns:String,
    CalConfig:Vec<CalConfig>,
}
<CalibrationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
...
</CalibrationData>