Don’t use String.replaceAll
in this case – that’s specified in terms of regular expressions, which means you’d need even more escaping. This should be fine:
String escaped = original.replace("\\", "\\\\");
Note that the backslashes are doubled due to being in Java string literals – so the actual strings involved here are “single backslash” and “double backslash” – not double and quadruple.
replace
works on simple strings – no regexes involved.