Cita:
Iniciado por herwex esa es la cosa como le agrego llevo este codigo:
Código PHP:
for(int x=0; x < ruta.length(); x++ )
{
if(ruta.charAt(x) == '\\')
{
ruta.concat("\\\\");
System.out.println("entre al if");
ruta= "\\\\\\";
}
}
pero lo imprime con solo una mmmm que estoy haciendo mal
Veamos, Herwex, varias cosas:
- El método
concat, como su nombre indica, concatena cadenas, es decir,
añade una cadena al final de la otra. Entonces, ¿por qué no imprime dos barras? Pues porque
concat, como casi todos los métodos de la clase
String, crea un nuevo objeto de tipo String. Por tanto, tal como lo estás haciendo,
siempre te imprimirá la cadena original.
- Para sustituir una cadena por otra, no tienes que recorrer toda la cadena, como se haría en C; yo también estoy acostumbrado a programar en C, pero
este es un lenguaje de alto nivel. Java tiene clases para todo y miles de métodos. En concreto, para sustituir caracteres, existen en String los métodos
replace y
replaceAll. Con una sola línea de código, es suficiente.
Código:
System.out.println("\nRuta: " + ruta.replace("\\", "\\\\"));