This is sort of the Java analogue of this question about C#.
Suppose I have a String object which I want to represent in code and I want to produce a string literal that maps to the same thing.
Example
hello, "world"
goodbye
becomes
hello, \"world\"\ngoodbye
I was just about to write a state machine that ingests the string character by character and escapes appropriately, but then I wondered if there was a better way, or a library that provides a function to do this.
If you can add external code, Apache’s Commons Text has
StringEscapeUtils.escapeJava()which I think does exactly what you want.