Caros,
Como editar um arquivo de parâmetros tipo:
parametro1: 0.50
parametro2: texto
parametro3: 8
sendo que:
- o arquivo é muito grande, não seria legal carrega-lo na memória;
- alguma coisa do tipo editarParametro(“parametro2”, “texto modificado”)
- alguém me disse para truncar o arquivo, mas não entendi mui bem,
com isso funciona?
Se o arquivo de parâmetros é em formato texto, você tem duas opções:
- Se o parâmetro editado NÃO MUDAR DE TAMANHO (ou seja, " parametro1: 0.50 " passar para " parametro1: 0.78 ", então você pode acessar o arquivo como sendo um arquivo de acesso aleatório (use fseek e ftell), e simplesmente sobreponha o parâmetro.
- Se você tiver de alterar o tamanho, acrescentar ou remover um parâmetro, não tem jeito - você tem de ler o arquivo linha a linha, e gravar linha a linha, inserindo, modificando ou removendo as linhas adequadas. Não é preciso carregar o arquivo inteiro na memória, mas você tem de trabalhar com 2 arquivos distintos (o de entrada e o de saída), remover o arquivo de entrada e renomear o arquivo de saída para o nome original do arquivo de entrada.
No caso é a segunda opção, o parâmetro altera o tamanho.
Achava que talvez tivesse alguma alternativa para não ter que criar um segundo arquivo.
Valeu pela resposta!!!