Как мне внести изменения в текстовый файл при нажатии кнопки?

Я написал небольшое приложение , которое создает графический интерфейс для настройки uShare. В настоящее время это сильно зависит от функций 'w' (запись) и 'a' (добавление) для создания / редактирования файла ushare.conf. Но я пытался найти способ, чтобы приложение сохраняло все изменения до тех пор, пока не будет нажата кнопка сохранения, и только затем фиксирует их в реальном файле. Я думаю, что это был бы лучший способ обойти пользователя, нажимая ввод каждый раз, когда они меняют любое поле (и действительно допускают GtkCheckButton).

3
задан 22 June 2012 в 20:49

1 ответ

Если вы хотите сохранить конфигурацию таким образом, я рекомендую вам использовать модуль Python ConfigParser. Обратите внимание, что вы должны убедиться, что вы храните файлы конфигурации в ~/.config/<your-app-name>. Вы можете сохранить конфигурацию следующим образом:

import ConfigParser
import xdg.BaseDirectory

# set the configdir to ~/.config/ushare
configdir = os.path.join(xdg.BaseDirectory.xdg_config_home, "ushare")

# check if the dir exists and if not, create it
if not os.path.exists(configdir):
    os.makedirs(configdir)

# create configparser object
config = ConfigParser.RawConfigParser()
cfile = os.path.join(configdir, "ushare.conf")

# add your config items - see the ConfigParser docs for how to do this

# later in your app add this when the user presses the button to save the config:

with open(cfile, 'wb') as configfile:
    config.write(configfile)

Обратите внимание: на самом деле я не запускал этот код и просто написал его здесь, но он должен работать нормально.

0
ответ дан 22 June 2012 в 20:49

Другие вопросы по тегам:

Похожие вопросы: