Salvando modificações em arquivo

Bom dia povo! =p

Estou fazendo a leitura de um arquivo e separando-o em campos e registros. Alguns campos podem ser modificados, outros não. Qual seria a melhor maneira para salvar as modificações no arquivo??

Ex do arquivo:

#5210
Primeiro Teste~
Sim, este é um teste!
~
#5211
Segundo Teste~
Ok, este é mais um teste!
~
#5212
Terceiro Teste~
Último este.


Ex da exibição:

Primeiro campo (JTextField) mostra ‘5210’
Segundo campo (JTextField) mostra ‘Primeiro Teste’
Terceiro campo (JTextArea) mostra ‘Sim, este é um teste!’


Apenas o Segundo e o Terceiro Campo pode ser modificado.
Se eu modificar apenas o segundo registro vou precisar re-escrever o arquivo inteiro ou há uma maneira de salvar as alterarações apenas dessa parte?

Valeu!

a) Arquivos-texto não podem ser modificados parcialmente se o tamanho do dado for alterado. Ele precisa ser relido, as modificações efetuadas, e então escrito novamente.
b) Se você quer fazer seu próprio banco de dados, use um pronto, como o HSQLDB (http://www.hsqldb.org ) ou o Derby ( http://db.apache.org/derby )
c) Se for só para configurações, use um arquivo .properties, só que você tem de lê-lo integralmente, fazer as modificações, e gravá-lo integralmente (já que ele é um simples arquivo texto.)