Как написать в OutputStream напрямую, используя Stringtemplate 4.x?

Я не хочу звонить .render() и построить очень большой Strings из некоторых моих шаблонов. В предыдущих версиях вы могли написать OutputStream непосредственно вместо того, чтобы визуализировать весь шаблон в String и затем запишите это.

Я пытался с помощью ST.write() с экземпляром NoIndentWriter но это не производит никакого выхода.

Как вы пишете прямо на OutputStream используя последнюю версию Stringtemplate?

1 ответ

Решение

Вы можете использовать AutoIndentWriter если вы хотите сохранить стандартное форматирование.

ST template = group.getInstanceOf("YourTemplate");
OutputStreamWriter osWriter = new OutputStreamWriter(stream);
STWriter stWriter = new AutoIndentWriter(osWriter);
template.write(stWriter);
osWriter.flush();
Другие вопросы по тегам