2012-04-07 5 views
7

Для моих интерфейсов командной строки часто бывает хорошо иметь небольшое ASCII-искусство в начале, но они часто содержат много обратных косых черт.Java: Игнорировать escape-последовательности

, например:

System.out.println(" _____ _______  _____ _ __ "); 
System.out.println("/____|__ __|/\ /____| |//"); 
System.out.println("| (___ | |/\ | | | '/"); 
System.out.println(" \___ \ | |//\ \| | | < "); 
System.out.println(" ____) | | |/ ____ \ |____| . \ "); 
System.out.println("|_____/ |_/_/ \_\_____|_|\_\ "); 

Но так как каждый «\» должен быть «\\» это часто выглядит очень некрасиво в коде, и это очень трудно найти/исправить ошибку в «шрифт» , Есть ли способ сказать Java NOT использовать escape-последовательности?

+2

"\\" является единственным способом пойти. Если вы действительно не хотите двойных обратных запросов, вы всегда можете создать статический массив String [] с каждой строкой текста, 2) замените некоторый «приемлемый» символ маркера для вашей косой черты, 3) println() массив в цикле и 4) String.replace() символ маркера с «\\». – paulsm4

ответ

3

Нет, Java не имеет ничего похожего на «стенографические строковые литералы» C#. Если вы хотите сделать искусство ASCII, подумайте о том, чтобы вставить его в текстовый файл и загрузить его из кода.

2

прочитал, что «образ» из файла, этот файл может быть в вашей библиотеке баночки :)

1

Hate to gravedig эту тему, но для кого-то еще там ищут это. Попробуйте использовать юникод!

Например: \ u0092 = "\"

Смежные вопросы