У меня есть программа, в которую я хочу вставить строки, содержащие неэкранированные символы Unicode, например.
String s = "(¬(a) ∨ ((¬(b) ∧ (c ∨ d)) ∨ e))"
Проблема в том, что эта строка уже читается неправильно, так как символы Unicode не экранированы, поэтому, если я сразу напечатаю ее, я получу:
(¬(a) ⨠((¬(b) ⧠(c ⨠d)) ⨠e))
Конечно, если я экранирую символы Unicode в строке, все работает нормально:
String s = "(\u00AC(a) \u2228 ((\u00AC(b) \u2227 (c \u2228 d)) \u2228 e))"
System.out.println(s);
Output:
(¬(a) ∨ ((¬(b) ∧ (c ∨ d)) ∨ e))
Однако, по сравнению с первым входом, второй можно охарактеризовать только как зловещий и почти неясный.
Есть ли способ сохранить визуальное представление и при этом заставить его работать?
Кодировка файла UTF-8.