Obrigado pela ajuda Buno. Abracos
Erivelto ----- Original Message ----- From: "Bruno J. S. Peixoto" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, April 03, 2003 2:46 PM Subject: Re: [java-list] Data do Sistema > 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] ------------------------------------------------------------------------- ------------------------------ 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] -------------------------------------------------------------------------