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

Separador en Archivo de texto

Estas en el tema de Separador en Archivo de texto en el foro de Java en Foros del Web. Saludos Amigos..... Necesito una ayuda, yo estoy leyendo de un archivo .txt un conjunto de valores que tengo que agregar en la BD, pero estas ...
  #1 (permalink)  
Antiguo 08/08/2006, 09:17
 
Fecha de Ingreso: febrero-2006
Mensajes: 26
Antigüedad: 18 años, 2 meses
Puntos: 0
Sonrisa Separador en Archivo de texto

Saludos Amigos.....
Necesito una ayuda, yo estoy leyendo de un archivo .txt un conjunto de valores que tengo que agregar en la BD, pero estas separados de la siguiente forma:
15 | 38 | Billing Code | Título | Artista | Autor| 4822 | Tipo

El problema es que estoy usando:
sc.useDelimiter(" | ");
pero el | no lo toma, me arroja valores:
15,|,38
por lo que me da un error....
Porfa! podria alguien ayudarme con lo que esta pasando... porque o reconoce el simbolo |....

Gracias
  #2 (permalink)  
Antiguo 08/08/2006, 13:07
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
sc.useDelimiter("|");

y despues hacer un Trim si quieres, pero StringTokenizer no admite separadores que sean mayores que 1 carácter.
  #3 (permalink)  
Antiguo 08/08/2006, 14:06
 
Fecha de Ingreso: febrero-2006
Mensajes: 26
Antigüedad: 18 años, 2 meses
Puntos: 0
Gracias, pero asi no me funciona, no reconoce el |....
  #4 (permalink)  
Antiguo 08/08/2006, 19:20
 
Fecha de Ingreso: junio-2005
Mensajes: 286
Antigüedad: 18 años, 10 meses
Puntos: 2
en Java 1.5: elStringArray.split('|');
  #5 (permalink)  
Antiguo 09/08/2006, 08:51
 
Fecha de Ingreso: febrero-2006
Mensajes: 26
Antigüedad: 18 años, 2 meses
Puntos: 0
no funciona :-(

Ya he probado de varias maneras pero no toma el | ... el split me devuelve un arreglo y no me sirve
  #6 (permalink)  
Antiguo 10/08/2006, 00:12
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Lo primero es saber que estas usando la clase Scanner, podías haber empezado por ahí , entonces mirando el API te das cuenta que el metodo useDelimiter no recibe un String cualquiera como StringTokenizer, si no que recibe una expresion regular y por eso " | " lo trata como "un espacio en blanco o un espacio en blanco".

Podria funcionar quizá algo así:
useDelimiter("\\s*\|\\s*");
  #7 (permalink)  
Antiguo 11/08/2006, 09:27
 
Fecha de Ingreso: febrero-2006
Mensajes: 26
Antigüedad: 18 años, 2 meses
Puntos: 0
Probe con lo que me sugeriste pero aparece este error :
illegal escape character
  #8 (permalink)  
Antiguo 11/08/2006, 11:31
 
Fecha de Ingreso: junio-2005
Mensajes: 286
Antigüedad: 18 años, 10 meses
Puntos: 2
prueba con este, una pequena modificacion de lo de OjosVerdes: "\\s*|\\s*"
Y si no, porque no pruebas con el StringTokenizer o su equivalente en 1.5 String.split()? Si te regresan arreglos, aun asi creo que podrias encontrar una solucion.
  #9 (permalink)  
Antiguo 07/11/2008, 13:44
 
Fecha de Ingreso: noviembre-2008
Mensajes: 1
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Separador en Archivo de texto

Hola, ¿entre cada texto (o número) y la barra hay espacios en blanco. Si es así, quítalos.
Suerte
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 12:14.