Peter:
Tengo un archivo de texto con los datos separada por medio de tabulador. Mi objetivo es cargar cada uno de los datos en un diferentes cadenas. Mi los archivos de texto es similar al siguiente: ABC ABCDE y ABCDEF tengo 3 Cuerdas: x, y, z. Mi objetivo es abc carga en X, Y y abcde en abcdef en z utilizando el escáner. Sin embargo, mi código está cargando toda la cadena 3 en individuales, x. ¿Cómo puedo lograr mi meta? Gracias
Mi código es el siguiente:
public void Stringu(String file) {
Scanner sc = null;
String x;
String y;
String z;
try {
sc = new Scanner(new File(file));;
sc.useDelimiter("/t");
while (sc.hasNext()) {
x = sc.next();
y = sc.next();
z = sc.next();
}
} catch (FileNotFoundException e) {
System.err.println("file not found");
} finally {
if (sc != null) {
sc.close();
}
}
}
JAP:
La solución a este problema es muy simple. Tiene dos opciones.
- Utilice
sc.useDelimiter("\t");
una barra invertida en lugar de/t
. Barra invertida significa carácter especial (que en este caso es una pestaña). - La opción dos, quitar la línea
sc.useDelimiter("\t");
todos juntos. Puede hacerlo porquesc.next()
ya se separa el contenido por espacios en blanco de forma predeterminada.