Problema com texto em SimpleDateFormat

2 respostas Resolvido
java
R

Boa tarde, amigos do GUJ

Estou com um problema aparentemente besta e procurei aqui e em outros fóruns e não achei a resposta.

Estou desenvolvendo um sistema, no qual preciso passar a hora de postagem. Utilizei o SimpleDateFormat para formatar a data, porém, gostaria de colocar dessa forma a data “24/08/2016 às 15:46”.

O problema é que como o “às” possui o S de Second, ele transforma o S em segundo e eu obtenho ou “24/082016 à0 15:46”. Utilizei o zero como exemplo de segundo.

Eis que o meu método para formatar datas…

public static String formatDate(Date date){
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy às HH:mm");
        String dateFormated = sdf.format(date);
        return dateFormated;
}

Os senhores tem alguma ideia de como trabalhar essa String? Sei que é besta, mas estou aprendendo.

Desde já, muito obrigado.

2 Respostas

crbonilha
Solucao aceita

De acordo com a documentação, todas as letras estão reservadas para as conversões deles. Para evitar que algo seja interpretado basta escapar este trecho.

Para escapar é só colocar o texto entre aspas simples:
“dd/MM/yyyy ‘às’ HH:mm”.

(Eu não testei, apenas li a documentação, então talvez não esteja funcionando).

https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

R

@crbonilha Cara, muito obrigado! Uma coisa simples na sintaxe, mas não tava achando. Resolveu! Muito obrigado!

Criado 24 de agosto de 2016
Ultima resposta 24 de ago. de 2016
Respostas 2
Participantes 2