"je créerai à chaque fois un tableau de taille n+1 dans lequel pour les n premières cases je mettrai le tableau d'avant, et le nouveau String à la dernière case"
utilise plutôt une Arraylist<String>, c'est fait pour (c'est un tableau à taille dynamique)
Tu peux toujours la convertir en tableau simple après si tu y tiens vraiment.
Sinon oui, c'est assez simple à faire mais le code java pour lire des fichiers est très moche et ça peut être déroutant au début. Ce que tu as trouvé sur google doit sûrement être bon 