Como posso confirmar alterações em um arquivo de texto ao pressionar o botão?

3

Eu escrevi um pequeno aplicativo que cria uma GUI para configurar o uShare. Atualmente, depende muito das funções 'w' (write) e 'a' (append) para gerar / editar o arquivo ushare.conf. Mas eu tenho tentado encontrar uma maneira para o aplicativo armazenar todas as alterações até que um botão salvar seja pressionado, e só então confirmá-las para o arquivo real. Eu acho que seria a melhor maneira de se ter o usuário pressionando enter toda vez que eles mudassem qualquer campo (e de fato permitir GtkCheckButton).

    
por boywithaxe 22.06.2012 / 14:50

1 resposta

3

Se você quiser armazenar configurações como essa, o que eu recomendo que você faça é usar o módulo Python ConfigParser . Por favor, note que você deve garantir que você armazene arquivos de configuração em ~/.config/<your-app-name> . Você pode armazenar a configuração assim:

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)

Por favor, note: eu não executei este código e apenas o escrevi aqui, mas ele deve funcionar bem.

    
por jonobacon 24.06.2012 / 03:29