在 Rust 中使用 Serde【译】
本文原文链接为 https://www.shuttle.rs/blog/2024/01/23/using-serde-rust 。大部分使用机器翻译,个人对机器翻译内容进行了部分润色,对于部分内容进行了增补。 在本文中,我们将讨论 Serde、如何在 Rust 应用程序中使用它以及一些更高级的提示和技巧。 什么是serde? serde Rust create用于高效地序列化和反序列化多种格式的数据。它通过提供两个可以使用的trait来实现这一点,恰当地命名为 Deserialize 和 Serialize 。作为生态系统中最著名的 crate 之一,它目前支持 20 多种类型的序列化(反序列化)。 首先,您需要将 crate 安装到您的 Rust 应用程序中: cargo add serde 使用serde 反序列化和序列化数据 序列化和反序列化数据的简单方法是添加 serde derive 功能。这会添加一个宏,您可以使用它来自动实现 Deserialize 和 Serialize - 您可以使用 --features 标志( -F 来实现)短的): cargo add serde -F derive 然后我们可以将宏添加到我们想要实现 Deserialize 或 Serialize 的任何struct体或enum(枚举)中: use serde::{Deserialize, Serialize}; #[derive(Deserialize, Serialize)] struct MyStruct { message: String, // ... the rest of your fields } 这允许我们使用任何支持 serde 的包在所述格式之间进行转换。作为示例,让我们使用 serde-json 与 JSON 格式相互转换:...