Foros del Web » Programación para mayores de 30 ;) » Java »

meter lineas ficheros en cadenas

Estas en el tema de meter lineas ficheros en cadenas en el foro de Java en Foros del Web. Hola, mirad, tengo hecho una lectura de un fichero que por cierto hago bien, ¿pero quiero meter en cadenas diferentes cada linea del fichero, para ...
  #1 (permalink)  
Antiguo 21/05/2009, 12:36
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
meter lineas ficheros en cadenas

Hola, mirad, tengo hecho una lectura de un fichero que por cierto hago bien, ¿pero quiero meter en cadenas diferentes cada linea del fichero, para poder usarlas en mi programa java.

Ejemplo:

1223323------cadena 1
232323454sd----cadena 2
1000-----cadena 3

¿Como podría hacerlo, me dais 1 idea?
  #2 (permalink)  
Antiguo 21/05/2009, 13:37
 
Fecha de Ingreso: julio-2006
Ubicación: Desde mi casa
Mensajes: 14
Antigüedad: 17 años, 9 meses
Puntos: 0
Respuesta: meter lineas ficheros en cadenas

Yo lo que haría es conforme voy leyendo las líneas las voy mediendo en un ArrayList.
  #3 (permalink)  
Antiguo 21/05/2009, 13:45
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: meter lineas ficheros en cadenas

Sigo igual que antes, podrías concretar un poco mas, soy torpe con esto
  #4 (permalink)  
Antiguo 22/05/2009, 06:15
 
Fecha de Ingreso: abril-2009
Mensajes: 82
Antigüedad: 15 años
Puntos: 2
Respuesta: meter lineas ficheros en cadenas

Voy a intentar explicar lo que el compañero te ha dicho:

Tu lees el fichero linea a linea, ¿no? (si no es así te recomiendo que le eches un vistazo a la clase BufferedReader) Cada vez que recuperes una linea, introduzcas esa linea en un ArrayList y posteriormente podrás recuperarlas una a una en el orden introducido. Por ejemplo:

Código:
BufferedReader bf = new BufferedReader(...);
ArrayList<String> cadenas = new ArrayList<String>();
String cadena = bf.readLine();;

while (cadena != null) {
     cadenas.add(cadena);
     cadena = bf.readLine();
}

// Para recuperar la primera cadena 
String c1 = cadenas.get(0);

// Para recuperar un array de Strings
String[] cadenasString = cadenas.toArray(new String[0]);
  #5 (permalink)  
Antiguo 22/05/2009, 08:10
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Respuesta: meter lineas ficheros en cadenas

Podrias hacer un split en el salto de linea y te quedaria un arreglo con todas las lienas por separado.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #6 (permalink)  
Antiguo 23/05/2009, 15:11
 
Fecha de Ingreso: diciembre-2008
Ubicación: Bogota
Mensajes: 149
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: meter lineas ficheros en cadenas

Hola chicos pues mira yo estoy en un lio medio parecido, tengo que cargar un txt y una vez leido cada palabra debo agregarlo a un campo de la base de datos por ejemplo me lee la linea
127.0.0.1 - - [06/Feb/2009:11:08:08 -0500] "GET / HTTP/1.1" 200 3444

con el StringTokenizer me separa la liena por palabras entonces quedaria algo asi
127.0.0.1
-
-
[06/Feb/2009:11:08:08
-0500]
"GET
/
HTTP/1.1"
200
3444

cada palabra se debe ingresar ala bd, no se como hacerlo por que me cuenta 18838 tokens y cada 10 palabras empieza para cada campo de la base de datos
uds me podrian ayudar?
en serio lo agradeceria
  #7 (permalink)  
Antiguo 25/05/2009, 14:51
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: meter lineas ficheros en cadenas

Exception in thread "main" java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
at Cliente.Cliente.main(Cliente.java:60)
Java Result: 1

Ese es un error que me da en la linea 60

En esa linea y en las 2 siguentes tengo esto

Código:
  puertoServidor= (Integer)cadenas.get(0);
                     host= (String) cadenas.get(1);
                     cadencia= (Integer)cadenas.get(2);
  #8 (permalink)  
Antiguo 25/05/2009, 14:57
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Respuesta: meter lineas ficheros en cadenas

Cadenas.get te esta devolviendo un String y tu lo estas tratando de pasar a Integer haciendo un simple casteo.

Forma correcta seria:
Código PHP:
puertoServidorInteger.parseInt(cadenas.get(0));
                     
host= (String) cadenas.get(1);
                     
cadenciaInteger.parseInt(cadenas.get(2)); 
Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #9 (permalink)  
Antiguo 25/05/2009, 16:25
 
Fecha de Ingreso: abril-2007
Mensajes: 166
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: meter lineas ficheros en cadenas

Gracias ya lo he solucionado!!! Arigato !!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:00.