Как избежать строки в Java?
Я читаю исходный файл в Java, но когда я его печатаю (sysout), экранированные символы больше не экранируются. Как я могу избежать символов типа \n
и \t
в строке в Java?
Ответы
Ответ 1
Вам следует использовать библиотеку StringEscapeUtils из известных Apache Commons. Вы обнаружите, что в Apache Commons есть много других предложений, которые могут быть полезны для других проблем, возникающих у вас на Java-разработке, так что вы не изобретаете велосипед.
Конкретный вызов, который вы хотите, имеет отношение к "экранированию Java"; вызов API StringEscapeUtils.escapeJava()
. В этой библиотеке также есть множество других утилит.
Ответ 2
Учитывая String s
,
s = s.replace("\\", "\\\\");
Заменяет все \
на \\
.
Ответ 3
Использование:
\\n
и \\t
Некоторые символы, которым предшествует обратная косая черта (\
), образуют escape-последовательность и имеют особое значение для компилятора. Поэтому в вашем случае \n
и \t
рассматриваются как специальные (новая строка и вкладка соответственно). Поэтому нам нужно избежать обратной косой черты, чтобы буквально обрабатывать n
и t
.
Ответ 4
StringEscapeUtils хорош для операций, связанных с строкой