Question

J'ai décidé de créer un convertisseur de devises en Java, et ont pour qu'il se retirerait les valeurs de conversion sur un fichier texte (pour permettre éditabilité facile car ces valeurs sont en constante évolution). J'ai réussi à le faire en utilisant la classe du scanner et de mettre toutes les valeurs dans un ArrayList.

Maintenant, je me demande s'il y a un moyen d'ajouter des commentaires au fichier texte pour l'utilisateur de lire, qui ne tiendra pas compte du scanner. "//" ne semble pas fonctionner.

Merci

Était-ce utile?

La solution

La meilleure façon serait de lire la ligne de fichiers en ligne à l'aide java.io.BufferedReader et analyser chaque ligne pour commentaires à l'aide String#startsWith() où vous dans les recherches pour "//".

Mais vous avez envisagé d'utiliser un fichier de propriétés et de gérer à l'aide de la java.util.Properties API? De cette façon, vous pouvez bénéficier d'un cahier des charges ready-made et API et vous pouvez utiliser # comme début de la ligne de commentaire. Voir aussi le tutoriel à sun.com .

Autres conseils

Scanner ignorer wont quoi que ce soit, vous devrez supprimer les commentaires de vos données après avoir lu dans.

Oui, while ((CurrentLine = bufferedReader.readLine ())! = Null) est peut-être le plus facile, puis effectuer vos tests nécessaires. currentLine.split (regex) est également très utile pour convertir une ligne dans un tableau de valeurs en utilisant un séparateur.

Avec Java nio, vous pouvez faire quelque chose comme ça. En supposant que vous voulez ignorer les lignes qui commencent par « // » et finir avec un ArrayList.

List<String> dataList;
Path path = FileSystems.getDefault().getPath(".", "data.txt");
dataList = Files.lines(path)
             .filter(line -> !(line.startsWith("//")))
             .collect(Collectors.toCollection(ArrayList::new));
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top