Foro Java y C/Linux

Programación Web => Java J2EE y JSP => Topic started by: nenuka on Abril 30, 2007, 08:32:08 pm

Title: cadenas
Post by: nenuka on Abril 30, 2007, 08:32:08 pm
hola!
como puedo hacer que si tengo una cadena de este tipo con una comilla simple:

String cadena0="University of Cambridge Computer Laboratory (IV'04)";

al tener la comilla me da fallo cundo quiero insertarla, por lo tanto querria que antes de gusradarla poder hacer que se me pusiera la cadena:

String cadena0="University of Cambridge Computer Laboratory (IV \'04)";

para que me la reconozca bien, como puedo hacerlo?
gracias
Title: Re: cadenas
Post by: Himura on Mayo 04, 2007, 03:19:12 am
Hola,

Asignalo desde un principio como:

String cadena0="University of Cambridge Computer Laboratory (IV \'04)";

sino intenta hacerlo con un replaceAll, me parece que sustituye subcadenas

saludos

Title: Re: cadenas
Post by: nenuka on Mayo 04, 2007, 11:14:01 pm
Pero por ejemplo si yo tengo la cadena:

String cadena0="E:\Investigacin\InfoVis\Bibliografa\Papers\Alexakis1998.pdf";

me da fallos, claro, por eso querria poder hacer para duplicar los caracteres \\, como lo puedo hacer?que es q no veo la forma!
La cadena me la dan en un archivo de otro tipo, por eso querria poder duplicarla antes xa que me reconozcan los separadores.
Title: Re: cadenas
Post by: chuidiang on Mayo 04, 2007, 11:18:19 pm
Hola:

Java entiende bien las otras barras /
Puedes buscar las \ y reemplazarlas por /

Se buena.
Title: Re: cadenas
Post by: nenuka on Mayo 04, 2007, 11:42:07 pm
el problema es que solo meter esa cadena ya me da erroresy no me deja ni buscarlas ni remplazarlas ni nada...yo en realidad lo que querria hacer seria:
yo importo los datos de un fichero bibtex donde la ruta del pdf esta asi:

E:\Investigación\InfoVis\Bibliografía\Papers\Alexakis1998.pdf

y en principio la ruta del pdf me la mete asi en la base de datos:

E:InvestigaciónInfoVisBibliografíaPapersAlexakis1998.pdf
ya que no me reconoce las barras, yo solo querria  coger el nombre del pdf, pero no se como hacerlo, alguna idea?
Title: Re: cadenas
Post by: Himura on Mayo 07, 2007, 11:24:17 pm
Hola,

Cuando obtengas la ruta del archivo:

String ruta = "E:\Investigación\InfoVis\Bibliografía\Papers\Alexakis1998.pdf"

File f = new File(ruta);

String nombre = f.getName(); //Obtienes el  nombre del archivo

No se como estes buscando las diagonales, pero si te permite encontrarlas para despues reemplazarlas.

Saludos
Title: Re: cadenas
Post by: chuidiang on Mayo 07, 2007, 11:47:26 pm
Hola:

Una vez que lees del fichero, antes de insertar en base de datos, puedes reemplazar las \ por / o bien por \\.
Luego inserta en base de datos y así quedará bien.
Si lo haces con \\, cuando vayas a leer de base de datos, lo leeras con una sola \, por lo que es posible que antes de intentar abrir el fichero tengas que volver a reemplazar por \\ o por /

Puesto que java lo traga bien de las dos formas, tanto en windows como en linux, yo casi me inclino porque lo cambies por / justo después de leerlo del fichero y así te evitas problemas.

Se buena.