我应该在 Rust 中的什么地方保存我的配置文件

Where should I save my config files in Rust

我需要保留信息,例如用户对我的程序的配置及其输入。在 Linux 和 Windows 上保存此文件的最佳位置是什么?

这是一个 rust-cargo 程序,它将被安装到 ~/.cargo/bin 以供使用。我试图将我的文件保存到 ~/.cargo 但我不知道这是否合适,因为我是 Rust.

的新手

用 Rust 编写的应用程序没有什么特别之处。与运行时附带的其他解决方案相反,Rust 构建依赖于标准环境和实践的普通应用程序。系统的正常规则适用于配置位置。

在 linux 上,您应该首先查询 XDG 路径,然后在不可用时使用 $HOME 作为后备。

你可以这样做:

use std::env::var;

fn main() {
    let config_home = var("XDG_CONFIG_HOME")
        .or_else(|_| var("HOME").map(|home|format!("{}/.config", home)));
    println!("{:?}", config_home);
}

请注意,有几个库会为您完成这项工作,并负责支持备用操作系统。

我不会 link 因为它们很多而且它们经常变化,但是如果您搜索 "rust configuration directory",您最喜欢的搜索引擎会将您引导到最受欢迎的搜索引擎。