Substituição de barra invertida \

7 respostas
MaikoID

Eu tenho o seguinte código.

// troca as barras invertidas caso seja windows
        if (caminhoSchema.contains("\")) {
            // troca as barras invertidas caso seja windows
            caminhoSchema.replace("\", "/");
        }

Bom, esta bem estranho isto, a principio o if é validado ou seja é encontrado a barra invertida, mas quando mando substituir nada acontece a string.

Eu preciso fazer isto para poder construir um XML com um schema em outro local.

abraço.

7 Respostas

ateubh

Por acaso você está no linux editando um arquivo feito no windows?

ateubh

Outra coisa… usa replaceAll, caso contrário ele só vai alterar a primeira ocorrência.

jcmird

ola amigo!
Voce tem q atribuir novamente o replace a sua variavel

caminhoSchema = caminhoSchema.replace("\", “/”);

A

Explicação:

caminhoSchema = caminhoSchema.replace("\", "/");

O tipo String é imutável, quando chamamos estes métodos da classe String (replace, toUpper,toLower, concat, etc), o ojbeto atual não é modificado e sim criado um novo String com a alteração solicitada. Repare que todos estes métodos retornam String.

MaikoID

esqueci :oops:

desculpa aew, as vezes sao erros tao bobos.

abraçaum.

jcmird

relex garoto as vezes faço as minhas patetadas rsrsrs…
abraços e qualquer coisa só gritar

aconstantino

Cara, nao se esqueça que existe a constante File.separator

Criado 26 de janeiro de 2009
Ultima resposta 26 de jan. de 2009
Respostas 7
Participantes 5