Caro Erivelto,

    Vc pode usar Calendar. Vc deve cria um novo objeto
desta classe usando o construtor padrão. Daí vc já
terá um obheto Calendar representando a tempo atual
(Data, hora, minuto, segundo e milisegundo). Depois
basta usar o método get para extrair as informações
que vc desejar.
   Estou enviando em anexo uma classe que herda de
GragorianCalendar e que faz isso. Note que elas estão
com a declaração de pacote aqui da empresa, vc precisa
mudar a declaração para a sua estrutura.

Valeu!!!

Bruno Peixoto


 --- Erivelto Paulo dos Santos
<[EMAIL PROTECTED]> escreveu: > Pessoal,
estou com um problema simples:
> 
> Eu preciso pegar a data do sistema e colocar em uma
> string, eu sei que tenho que usar o metodo
> System.currentTimeMillis(). Alguem tem alguma rotina
> jah pronta para me enviar?
> 
> Desde jah agradeco.
> 
> Erivelto
>  

_______________________________________________________________________
Yahoo! Mail
O melhor e-mail gratuito da internet: 6MB de espaço, antivírus, acesso POP3, filtro 
contra spam. 
http://br.mail.yahoo.com/
package com.fcosta.util.tempo;

import java.util.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;

/**
 *
 * @versão 0.20         30 de Agosto 2000
 * @author Apply Solutions
 *
 */

public class Data extends GregorianCalendar{
    private final double MILLI_SEC_DIA = 86400000;//Milisegundos em um dia

/**
 *Construtores
 */
 public Data(){
        super();
 }

 public Data(String str)throws ExcecaoDataInvalida{
    super();
    this.lerData(str);
 }

 public Data(long milSec)throws ExcecaoDataInvalida{
    super();
    this.lerData(milSec);
 }


/**
 * Inicializa o objeto do tipo MinhaData com o valor GregorianCalendar,
 * no formato dd.mm.yyyy, correspondente à string passada como parâmetro.
 */
 public void lerData(String dat)throws ExcecaoDataInvalida{
                SimpleDateFormat d = new SimpleDateFormat("dd/MM/yyyy");
            d.setCalendar(this);
                Date dt = new Date();
    try{
                        dt=d.parse(dat);
                this.setTime(dt);
                                if ( this.get(this.YEAR) < 0 || this.get(this.YEAR) > 
9999){
                                                throw new ExcecaoDataInvalida(dat,"Ano 
inválido.");
                                }
                }catch(ParseException pe){
                                throw new ExcecaoDataInvalida(dat);
                }
}

/**
 * Inicializa o objeto do tipo MinhaData com o valor GregorianCalendar,
 * no formato dd/mm/yyyy, correspondente ao valor de milissegundos passado como 
parâmetro.
 */
 public void lerData(long milSec)throws ExcecaoDataInvalida{
                this.setTimeInMillis(milSec);
        this.lerData(this.escreveData());
}

/**
 * Escreve, no formato dd/mm/yyyy, os valores de dia, mês e ano do
 * objeto MinhaData.
 */
 public String escreveData(){
    String dia = this.get(this.DATE) + "";
    if(dia.length()==1){
        dia = "0" + dia;
    }    
    String mes = (this.get(this.MONTH)+1) + "";
    if(mes.length()==1){
        mes = "0" + mes;
    }
        return dia+"/"+mes+"/"+this.get(this.YEAR);
 }

 /**
  * retorna true se a data for menor que a data passada como parâmetro
  */
  public boolean before(GregorianCalendar pData){
    int dia1, dia2, mes1, mes2, ano1, ano2;
    dia1 = this.get(this.DATE);
    dia2 = pData.get(pData.DATE);
    mes1 = this.get(this.MONTH);
    mes2 = pData.get(pData.MONTH);
    ano1 = this.get(this.YEAR);
    ano2 = pData.get(pData.YEAR);
    if (ano1 <= ano2){
      if (ano1 < ano2){
        return true;
      }
      if (mes1 <= mes2){
        if (mes1 < mes2)
            return true;
        if (dia1 < dia2)
            return true;
      }
    }

    return false;
  }

  /**
  * retorna true se a data for mior que a data passada como parâmetro
  */
  public boolean after(GregorianCalendar pData){
    int dia1, dia2, mes1, mes2, ano1, ano2;
    dia1 = this.get(this.DATE);
    dia2 = pData.get(pData.DATE);
    mes1 = this.get(this.MONTH);
    mes2 = pData.get(pData.MONTH);
    ano1 = this.get(this.YEAR);
    ano2 = pData.get(pData.YEAR);    
    return !(before(pData));
  }

  /**
  * Retorna true se a data for igual à data passada como parâmetro
  */
  public boolean today(){
    int dia1, dia2, mes1, mes2, ano1, ano2;
    Data pData = new Data();
    dia1 = this.get(this.DATE);
    dia2 = pData.get(pData.DATE);
    mes1 = this.get(this.MONTH);
    mes2 = pData.get(pData.MONTH);
    ano1 = this.get(this.YEAR);
    ano2 = pData.get(pData.YEAR);

    if ( (ano1==ano2) && (mes1==mes2) && (dia1==dia2) ){
      return true;
    }
    return false;
  }

  /**
   * Retorna a quantidade de dias entre uma data e outra
   */
   public int difDias(Data pData){
        double milliSec1 = this.getTimeInMillis();
        double milliSec2 = pData.getTimeInMillis();
        double numDias = ((milliSec2 - milliSec1)/MILLI_SEC_DIA) + 1;
        int intDias = (int)(Math.floor(numDias));
        return   intDias;      
   }
}





package com.fcosta.util.tempo;

/**
  * @author Apply Solutions
  *
  */
public class ExcecaoDataInvalida extends Exception{
                private Object obj;

/**
 * Construtor.
 * Chama o construtor da classe mãe e inicializa o atributo obj para que ele possa
 * ser retornado.
 */
        public ExcecaoDataInvalida(Object ob){
                super("Data inválida.");
                obj=ob;
        }

        public ExcecaoDataInvalida(Object ob,String msg){
                super(msg);
                obj = ob;
        }

/**
 * Retorna o nome da classe do objeto que causou a exceção.
 */
        public String getClassName(){
                return obj.getClass().getName();
        }

/**
 * Retorna o objeto que causou a exception.
 */
        public Object getObject(){
                return obj;
        }



}


------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a