Fichier texte en Java List<String> à l'aide de Communes ou de Goyave
Quelle est la façon la plus élégante de mettre chaque ligne de texte (à partir du fichier texte) dans LinkedList (comme une Chaîne de caractères de l'objet) ou d'une autre collection, à l'aide de Communes ou de Goyave bibliothèques.
En fonction de votre utilisation, à condition que le codage par défaut" pourrait être une bonne idée ou pas. De toute façon, personnellement, je trouve ça bien que la Goyave API il est clair que vous êtes de prendre une hypothèse à propos de l'encodage du fichier.
Je ne suis pas sûr si vous voulez savoir comment le faire via la Goyave ou des Communes IO, mais depuis Java 7 ceci peut être fait via java.nio.file.Files.readAllLines(Path path, Charset cs) (javadoc).
Voici comment le faire avec Goyave:
Référence:
Fichiers.readLines(Fichier, Charset)
OriginalL'auteur Sean Patrick Floyd
À l'aide de Apache Commons IO, vous pouvez utiliser
FileUtils#readLines
méthode. C'est aussi simple que:IOUtils.lineIterator
est un meilleur choix car il ne charge pas la totalité du fichier en mémoire.OriginalL'auteur João Silva
Vous pouvez utiliser la Goyave:
Ou apache commons io:
Je dirais que les deux sont tout aussi élégant.
En fonction de votre utilisation, à condition que le codage par défaut" pourrait être une bonne idée ou pas. De toute façon, personnellement, je trouve ça bien que la Goyave API il est clair que vous êtes de prendre une hypothèse à propos de l'encodage du fichier.
Mise à jour:
Java 7 a maintenant construit dans cette: Les fichiers.readAllLines(Chemin de chemin de, Charset cs). Et là aussi, vous devez spécifier le jeu de caractères explicitement.
OriginalL'auteur
à l'aide de org.apache.commons.io.FileUtils
OriginalL'auteur Paul
Ils sont assez semblables, avec les Communes IO, il ressemblera à ceci:
Principal avantage de Goyave est la spécification du jeu de caractères (pas de fautes de frappe):
OriginalL'auteur Fabian Steeg
C'est probablement ce que vous cherchez
FileUtils.readLines(Fichier)
OriginalL'auteur John Vint
Je ne suis pas sûr si vous voulez savoir comment le faire via la Goyave ou des Communes IO, mais depuis Java 7 ceci peut être fait via
java.nio.file.Files.readAllLines(Path path, Charset cs)
(javadoc).Puisque c'est une partie de la Java SE, il ne vous oblige pas à ajouter des fichiers jar (Goyave ou de Communes) à votre projet.
OriginalL'auteur zpon