Я пытаюсь распечатать основной заголовок в Groovy. Мне нужно, чтобы первая строка имела оправданную дату, с именем центра, расположенным по центру, и номером страницы, оправданным. Во второй строке мне нужно, чтобы описание отчета было сконцентрировано с названием отчета правильно обоснованным. Я не смог получить пример вывода для правильного ввода в это текстовое поле, поэтому, надеюсь, этого описания будет достаточно, он выглядит довольно стандартным.Форматирование вывода строки в groovy
Я извлекаю дату, название института, описание отчета и название отчета из базы данных. Таким образом, эти поля являются переменными по размеру. Я думал, что-то, как это будет работать, но это не верно, оправдать или центр правильно:
println String.format("%-${maxColumns}s %s %${maxColumns}s", dbDateTime.format('MMMMM d, yyyy'), institution, 'Page: 1')
println String.format("%-${maxColumns}s %s %${maxColumns}s", '', jobTitle, programName)
Я поставил maxColumns 80, ограничение на количество символов. Любая помощь приветствуется, я искал высоко и низко для этого! Благодаря!
Для чего вы собираетесь это использовать? Вы уверены, что это не задача для чего-то вроде яшмы или какой-нибудь библиотеки с выходом в формате pdf (или других форматов)? – Will
Это будет основной вывод текста, и файл будет ежедневно отправляться по электронной почте определенным лицам. Мы хотим сохранить этот простой, без pdf-текста просто текст. – tnichol
Если это был только один элемент в строке, вы можете использовать методы [center] (http://groovy.codehaus.org/groovy-jdk/java/lang/String.html#center (java.lang.Number)) , [padLeft] (http: //groovy.codehaus. орг/заводной-JDK/Java/языки/String.html # padRight (java.lang.Number)). Вы можете написать код, чтобы объединить результаты этих трех функций в одну строку. – jesseplymale