Olá, galera...
Vou explicar meu problema:
Tenho um arquivo .INI com uma lista de arquivos em uma seção chamada "Files". Fica mais ou menos assim:
[FILES]
FILE1=C:TesteArquivo1.txt
FILE2=C:TesteArquivo2.txt
FILE3=C:TesteArquivo3.txt
FILE4=C:TesteArquivo4.txt
E assim por diante, podendo ter o um numero qualquer de arquivos.
Em uma seção "geral" eu tenho uma chave chamada "contFiles" que me retorna o numero de arquivos na lista, assim posso pegar o nome de todos em um FOR e carregar em um array na minha aplicação, e permitir que o usuario altere essa lista adicionando ou excluindo arquivos.
O meu problema está na exclusão: quando excluir o ultimo, é so apagar a ultima chave da lista e subtrair um em "contFiles", mas se for excluido por exemplo o segundo nome, não posso deixar a lista faltando um, assim teria que altera toda a lista, ficando assim: (usando o exemplo acima, retirando o arquivo "Arquivo2.txt"
[FILES]
FILE1=C:TesteArquivo1.txt
FILE2=C:TesteArquivo3.txt
FILE3=C:TesteArquivo4.txt
Perceba que nao posso deixar um indice "pulado" na lista.
Minha solução é reescrever toda a lista sempre que o usuario pedir para visualizar (onde tem a opção de alterar)... mas isso pode levar tempo, pois a lista poderá ter milhares de nomes de arquivos...
Alguem tem outra solução, mais pratica, como por exemplo renomear as chaves, ao inves de deletar todas e reescrever, ou mesmo trocar o conteudo de todas...
Agradeço qualquer ajuda