Como exibir um texto incluindo as quebras de linhas "\n" como tags "br"

5 respostas
asclows

Como exibir um texto de forma correta incluindo as quebras de linhas “\n” como tags
? Faria isso com alguma método das tags JSTL?

5 Respostas

Lucas_Cavalcanti

texto.replaceAll("\n", “
”)

=)

ou colocar a tag

 texto 
asclows

Blz! No entanto eu gostaria de tratar isso na view mesmo, então acho que seria melhor eu utilizar algo em JSTL.

Tentei utilizar:

${fn:replace("\n", "<br />", artigo.texto)}

Só que não é permitido, não aceita o “\n” como parâmetro. Poxa sei que isso é básico, venho do php onde eu tinha uma função nl2br() que faz exatamente o que eu preciso agora em java.

Alguém tem uma idéia de como posso fazer isso?

L

não sei se te ajuda:

http://www.mail-archive.com/[email removido]/msg03983.html

nicholas.bittencourt

Porque voce nao faz a sua propria tag???

asclows

O exemplo do link que me informaram traz a solução abaixo que já testei e funciona:

<% pageContext.setAttribute("linefeed", "\n"); %> <c:out value="${fn:replace(artigo.texto, linefeed, '<br />')}" escapeXml="false"/>
No entanto há nesta solução uma parte scriptlet que eu gostaria de evitar, tentei da seguinte forma:

<c:set var="linefeed" value="\n"> <c:out value="${fn:replace(artigo.texto, linefeed, '<br>')}" escapeXml="false"/>
No entanto, não funciona como o primeiro exemplo, então, qual a diferença entre estas duas formas neste tratamento de strings?

Criado 15 de julho de 2007
Ultima resposta 23 de jul. de 2007
Respostas 5
Participantes 4