Importar desde archivo de texto de la pregunta de Java
-
13-09-2019 - |
Pregunta
He decidido crear un convertidor de moneda en Java, y la tengan por lo que sería tirar de los valores de conversión fuera de un archivo de texto (para permitir la fácil capacidad de edición ya que estos valores están cambiando constantemente). Me las arreglé para hacerlo mediante la clase escáner y poner todos los valores en un ArrayList.
Ahora estoy preguntando si hay una manera de añadir comentarios al archivo de texto para que el usuario lea, que no hará caso del escáner. no parece "//" para trabajar.
Gracias
Solución
La mejor manera sería leer el archivo línea por línea usando java.io.BufferedReader
y escanear cada línea de comentarios usando String#startsWith()
donde en las búsquedas de "//"
.
Pero, ¿ha considerado el uso de un archivo de propiedades y gestionar usando el java.util.Properties
API? De esta manera usted puede beneficiarse de una especificación ya hecha y la API y se puede utilizar # como comienzo de línea de comentario. También vea la tutorial en sun.com .
Otros consejos
escáner suele ignorar cualquier cosa, usted tendrá que quitar los comentarios de sus datos después de haber leído en.
Sí, mientras que ((currentline = bufferedReader.readLine ())! = Null) es posiblemente el más fácil, a continuación, realizar las pruebas necesarias. currentLine.split (regex) también es muy útil para la conversión de una línea en una matriz de valores usando un delimitador.
Con nio Java, se podría hacer algo como esto. Suponiendo que desea ignorar las líneas que comienzan con "//" y terminar con 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));