是的,Rust 的 toml
库支持多文档。你可以使用 toml
库来解析和生成包含多个文档的 TOML 文件。每个文档可以有自己的键值对,它们之间用分隔符(通常是双引号)包围。
以下是一个简单的示例,展示了如何在 Rust 中使用 toml
库处理多文档的 TOML 文件:
use toml::Value;
fn main() {
let mut config = Value::from("[[database]]\nhost = \"localhost\"\nport = 5432\n\n[[api]]\nkey = \"1234567890abcdef\"");
// 解析第一个文档
let database_config: Value = config.get("database").unwrap().clone();
println!("Database config: {:?}", database_config);
// 解析第二个文档
let api_config: Value = config.get("api").unwrap().clone();
println!("API config: {:?}", api_config);
}
在这个示例中,我们创建了一个包含两个文档的 TOML 字符串。然后,我们使用 toml
库的 Value
类型来解析这个字符串,并使用 get
方法分别获取每个文档的配置。
输出结果如下:
Database config: Value({
"host": "localhost",
"port": 5432
})
API config: Value({
"key": "1234567890abcdef"
})
这个示例展示了如何在 Rust 中使用 toml
库处理多文档的 TOML 文件。你可以根据自己的需求对这个示例进行修改和扩展。