Originariamente inviato da Andrea1979
nelle stringhe

\

è un carattere di escape, per cui per cambiare tutte le "\" in "\\" dovrai fare il replaceAll di "\\" con "\\\\", credo
Purtroppo no: il primo parametro del metodo replaceAll() non è la stringa da cercare, ma l'espressione regolare che denota la stringa da cercare. Di conseguenza, questa istruzione
codice:
String nuova = miaStringa.replaceAll("\\", "\\\\");
genera l'eccezione PatternSyntaxException, in quanto la stringa "\\" non denota una espressione regolare valida.
Originariamente inviato da bobix78
ma poi ottengo c:\\\cartella (eccetera). Se provo a mettere "\\\" mi dà lo stesso errore di "\". Si può utilizzare il codice ASCII di "\"? Qualcuno mi sa dire qual è?
Se la classe String prevedesse un metodo replaceAll() con la seguente firma
codice:
public String replaceAll(String oldString, String newString)

oldString: La sottostringa da cercare
newString: La sottostringa da sostituire a oldString
allora la soluzione proposta da Andrea1979 sarebbe corretta e non otterresti una stringa con 3 caratteri '\\', in quanto la prima servirebbe per quotare la seconda e Java interpreterebbe in modo corretto il carattere. Purtroppo tale metodo non esiste.

Ciao.