[Dever de casa] Trabalhando com datas

9 respostas
gui_sv

Pessoal,

Preciso converter datas:

recebo a data da seguinte maneira: DD/MM/AA (String)

a minha saída terá que ser ex: 10 de Abril de 2005

como que eu faço isso ?!?!?!?

vlwwww

9 Respostas

sapulha

Dá uma olhada na API, na classe SimpleDateFormat
Ela tem vários métodos para conversão de datas.

rmarin

SimpleDateFormat

rmarin

Cara, tira esse URGENTEEEEEEE do assunto, isso aqui num é pronto socorro não. :wink:

gui_sv

precisar ser a resposta em portugues 10 de MAIO de 2004

sei - la

eu estou na aula e tenho q entregar isso 18:10

se alguem tiver o código q faz isso !!

vlw
vlw

gui_sv

eu coloquei o URGENTEEEEEEEE pq é urgenteeeeeee

a professora simplesmente tacou tudo e mando a gente faze … e eu nao tenho a minima ideia de como faz…é só por isssoooooo

vlw vlw

T

Eu até tinha postado a solução, mas como é lição de casa, leia o javadoc da classe java.text.SimpleDateFormat. Não use psicografia :frowning:

T

Puxa, só percebi que o gajo queria a resposta de uma prova ou trabalho (nem é lição de casa) muito tarde. Agora ela já pegou a solução. Que droga.

Mas para quem não quer resolver uma lição de casa, mas tem um problema semelhante, vamos lá:

import java.util.*;
import java.text.*;

class TesteDateFormat {
    public static void main(String[] args) throws ParseException {
        DateFormat df1 = new SimpleDateFormat ("dd/MM/yy");
        Date dt = df1.parse ("10/04/05");
        DateFormat df2 = new SimpleDateFormat ("d 'de' MMMMM 'de' yyyy");
        System.out.println (df2.format (dt));
    }
}

Isso é para eu aprender a ser menos ingênuo. Próxima vez que alguém tacar “urgente” no título é para eu desconfiar que o cara quer entregar uma prova, ou trabalho.

gui_sv

Peço Desculpas, mas não foi de má fé … pq temos que explicar o estamos fazendo…

entao eu estou pesquisando a simpledateformat para ver DIREITINHO como faz…

eu nao tinha entendido aquele esquema “d ‘de’ MMMM ‘de’ yyyy”.

mas em todo caso… muito obrigado

e mais uma vez desculpa…

desculpa tbm pela apelação … mas tenho um pouco de culpa pelo título , pois a uma ou duas semanas atras, meu tópico, fico…fico…fico…e nenhuma resposta … no dia seguinte COPIEI aquele tópico e ai sim responderam…

e ja q me criticaram, vou fazer um apelo…

QUASE TODOS, SENÃO TODOS OS TÓPICOS, SÓ SÃO RESPONDIDOS QUANDO ESTÃO NA PÁGINA INICIAL…

SÃO RAROS OS CASOS EM QUE O TOPICO EH RESPONDIDO ATRAVES DO MENU FÓRUM…

PRONTO DESABAFEI…

OBRIGADO THINGOL =]

T

De qualquer maneira, se o código que pus fosse rodado em um Windows em inglês, não funcionaria. O método correto é usar

DateFormat df = DateFormat.getDateInstance (DateFormat.LONG, new Locale ("pt", "BR"));
import java.util.*;
import java.text.*;

class TesteDateFormat {
    public static void main(String[] args) throws ParseException {
        DateFormat df1 = new SimpleDateFormat ("dd/MM/yy");
        Date dt = df1.parse ("10/04/05");
        DateFormat df2;
        Locale ptBR = new Locale ("pt", "BR");
        df2 = DateFormat.getDateInstance (DateFormat.SHORT, ptBR); // 10/04/05
        System.out.println (df2.format (dt));
        df2 = DateFormat.getDateInstance (DateFormat.MEDIUM, ptBR); // 10/04/2005
        System.out.println (df2.format (dt));
        df2 = DateFormat.getDateInstance (DateFormat.LONG, ptBR); // 10 de Abril de 2005
        System.out.println (df2.format (dt));
        df2 = DateFormat.getDateInstance (DateFormat.FULL, ptBR); // Domingo, 10 de Abril de 2005
        System.out.println (df2.format (dt));
    }
}
Criado 16 de agosto de 2006
Ultima resposta 16 de ago. de 2006
Respostas 9
Participantes 4