繁体   English   中英

我可以在哪里存储数据 /C++、Linux、QtCreator

[英]where I can store data /C++, Linux, QtCreator

我在 QtCreator 中有一个小程序,但是我可以在其中存储来自用户的数据,如果该程序没有 root 权限来创建目录,例如在 /usr/bin/myappname 中。 我不能拥有root权限,因为我的程序像appimage一样分发,我喜欢像普通用户一样启动该图像,而不是root。 也许我可以将数据存储到 /home/user/myappname 但如果用户在他的操作系统主目录中有其他语言,则不必存在。

我可以在哪里存储数据/C++

如果该程序没有root权限

一种方法是让 package 管理器在安装程序时创建具有超级用户权限的目录。 此方法仅在使用 package 管理器安装程序时有效。 这是服务器等守护进程的典型选择。

另一种方法是将数据存储在用户的主目录中,该进程可能具有创建目录的权限。 这是交互式应用程序的典型选择。

您应该存储数据的确切位置取决于您运行该过程的系统。 不同的操作系统有不同的约定。 它还取决于您存储的数据类型。 是暂时的吗? 它依赖于 CPU 架构吗? 是为了配置吗? 是日志文件吗?

对于 Linux 和其他 POSIX 系统,请遵循XDG Base Directory Specification 还要学习Filesystem Hierarchy Standard 对于其他系统,请查阅他们的文档以了解最佳实践。

我可以将数据存储到 /home/user/myappname 但如果用户在他的操作系统主目录中有其他语言,则不必存在。

不要假设主目录的路径。 使用HOME环境变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM