Página Inicial do Fórum > Google Android e Desenvolvimento Mobile

Capturar dia, mês e ano de um DateField



Criar novo tópico   Responder tópico


  1. amilton_sp
    Posts:25


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Olá pessoal. Minha dúvida parece boba, mas não consegui formatar minha data como dd/mm/aaa, aliás, não consigo separar dia, mês e ano de um DateField que capturei com getDate().

    Tentei usar o GregorianCalendar, mas não roda no J2ME. . .

    Alguma dica?



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    O que você quer é pegar dia, mes e ano separadamente? Se for, o objeto java.util.Date tem os metodos getDay(), getMonth() e getYear().

    http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html

    Agora se vc quer transformar de aaaa-mm-dd para dd/mm/aaaa vc pode fazer assim:



    Espero ter ajudado!
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. amilton_sp
    Posts:25


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Pois é, para mim parecia simples assim . . mas não está encontrando os métodos getDate(), getMonth() e getYear() em java.util.date.

    Talvez pq esses métodos estejam Deprecated.

    Não é questão de pegar do banco mesmo e sim converter um Date em String mas no formato que eu quiser.



  1. diogo.rjs
    Posts:135


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Usa o StrTokenizer

    //data é a string que contem a data (dd/mm/aaaa) e '/' é o delimitador,
    //ou seja, oq irá delimitar cada string

    StrTokenizer str = new StrTokenizer(data, '/');

    //Nessas strings vc terá o Dia, o Mes e o Ano separados

    String strDia = str.nextToken() ;
    String strMes = str.nextToken() ;
    String strAno = str.nextToken() ;

    //Caso seja necessário converter para inteiro é só fazer

    Int nDia = Integer.toInt(strDia);
    Int nMes = Integer.toInt(strMes);
    Int nAno = Integer.toInt(strAno);

    Bom é isso.


    _________________
    JavaFree.org



  1. giovanni
    Posts:17


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44



  1. amilton_sp
    Posts:25


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Acho que não expliquei direito.
    Um objeto DateField já existe na minha aplicação. Consigo capturar a data que foi escolhida pelo método getDate(), mas se uso o método toString() diretamente ele retorna em um formato longo com dia, mês, ano, hora, minuto, segund, GMT e tudo o mais. Eu só quero dia, mês e ano.
    Se o método getDate(), getMonth() e getYear() funcionasse seria perfeito, mas não rola.
    Nem o GregorianCalendar consigo instanciar no J2ME.

    Portanto eu tenho o o bjeto Date . . preciso capturar dia, mês e ano desse objeto.

    Alguma outra dica?



  1. ping
    Posts:1739


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Você pode usar a classe Calendar, como segue:


    _________________
    Blog sobre mobilidade



  1. amilton_sp
    Posts:25


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Esse funcionou beleza . .

    Valeu ping . . .



  1. colosos
    Posts:142


    Comment Arrow

    Publicado em: 15/09/2009 04:51:10

    E aqui como eu posso inserir a data certa no banco?


    e o que fasso para que digitem certo no tfrgdata.getText()
    sei que no banco tem que ir assim "yyyy-MM-dd"
    mais tem que trazer assim "dd/MM/yyyy" no grid por exemplo

    Date rgdata = resultado.getDate("RGDATA");


    como visto são varios problema de Data com banco de dados

    no grid vem assim "2009-08-24"
    e nos TextField vem assim "2009-08-24 00:00:00.0"



  1. Relacionados





Novo tópico   Responder tópico     Índice do forum -> Google Android e Desenvolvimento Mobile