我应该在哪里保存我的应用程序的数据?

时间:2017-04-28 17:05:17

标签: python windows cx-freeze

我刚刚使用Cx_freeze冻结了一个适用于Windows的小应用程序。我知道我可以在数据库中保存一些日期(我使用的是sqlite3)。但是应用程序需要在某个时刻创建一个文件夹来保存用户编写的草稿,但它无法正常工作。我无权创建文件夹。 enter image description here 代码:

if not os.path.exists('drafts'):
    os.makedirs('drafts')

当我在'Documents'中的文件夹中测试它时,它工作得很好,但在冻结之后却没有。 实际上,考虑到我正在尝试创建文件夹,这并不是一个惊喜。所以,我想知道我应该在哪里保存文件(这些是文本文件)。 我也得到了这个错误,代码

commande = sqlite3.connect ('Base_de_donnees.db')

enter image description here 我不知道为什么这个不起作用,但它可能与第一个错误有关.. 感谢任何启发

1 个答案:

答案 0 :(得分:5)

用户的应用程序特定数据目录存储在环境变量APPDATA中。做类似的事情:

my_app_name = 'my_app'
my_app_data_dir = os.path.join(os.environ['APPDATA'], my_app_name)