Se devi leggere tutto il file in un array di stringhe prima di effettuare le modifiche, dipende dalla grandezza del file. Se non e' tanto grande (parliamo di un file di testo di qualche mega) allora va bene, altrimenti occupare molta memoria non e' molto funzionale.

Dato che le modifiche le effettuerai a partire da una chiave di ricerca (presumo, il codice), forse e' piu' conveniente, dopo aver inserito il codice, leggere il file fino ai dati cercati e visualizzarli. A questo punto, dovresti memorizzare le modifiche e solo quando queste risultano definitive, riportarle in un secondo file di testo in cui scriverai i dati non modificati presi dal file originale rileggendolo piu' i dati modificati che hai in memoria. Alla fine cancellerai il primo file e rinominerai il secondo.