Problema com replaceAll

Estou com o seguinte problema:

Tenho que fazer um replace de “” para “\”, mas estou conseguindo, já tentei

caminho = caminho.replaceAll("\","\");
caminho = caminho.replaceAll("\","\\");
caminho = caminho.replaceAll("[\]","[\][\]");

mas nenhum deles rolou.

Se é para caminho de diretório basta substituir “\” por “/”

è caminho de diretório, mas esse caminho é para buscar uma imagem em outro servidor, o caminho é + ou - assim:

\server1\Imagens\Projetos\Arquivos\imagem.jpg

se eu passo o caminho assim ele não encontra a imagem, tenho que passar assim:

\\server1\Imagens\Projetos\Arquivos\imagem.jpg

então não posso substituir p “\” por “/” pois tem o servidor na frente, ou posso ?

De onde você recebe este char \ ???

Desculpas, não tinha visto que já havia postado outra mensagem, já tentou algo como \\server1/blahblah/blahblah

Esse caminho vem do banco de dados.

Concegui, deve ficar assim:

caminho = caminho.replaceAll("\\","\\\\");

GHahahahahaha, ficou style

 caminho = caminho.replaceAll("\\","\\\\");

Isto merece um comentário igual ao que se encontra nos fontes do kernel do Unix V6:

/* You are not expected to understand this */

De fato, é por isso que o C# tem uma forma alternativa de exprimir strings - ponha um “@” antes da string, e os caracteres “” não precisam ser duplicados.

Huuuuuummmmmmmm, veio perguntar mas acabou ensinando hahaha, valeu brother

Eu entendi hehe

“” -> não faz nada, é caractere de escape
“\” -> vira “”, mas ai a regexp engine entende que é apenas um caractere de escape
“\\” -> vira “\” e então entende que é para buscar uma “” XD