Comparação equals não funciona

3 respostas
R

Boa tarde!!!
No metodo abaixo eu comparo a data atual com uma data armazenada no banco, porem não da certo, nunca entra no if. Se eu digitar o valor dirego no código(“16:00:00”) quando chega na hora ele executa, mas se esta no banco e eu recupero de um jformatter não.

public void executa(){
        timer = new Timer (500, new ActionListener() {
        private DateFormat df = new SimpleDateFormat ("HH:mm:ss");
        public void actionPerformed(ActionEvent e) {
        if (canUpdate) {
            try {
                String hhmmss;
                hhmmss = df.format (new java.util.Date());
                if(hhmmss.equalsIgnoreCase(ftfBackup1.getText().trim()) || hhmmss.equals("16:00:00")){
                   executaBackup();
                }
            } catch (Throwable ex) {
              //  JOptionPane.showMessageDialog(null, ex);
            }
        }
    }
});
     
        timer.start();
        
    }

Alguem pode me dar ma luz?

3 Respostas

maxmustang

canUpdate

é um variavel??

wbdsjunior

primeiro, duas perguntas:

1) porque hhmmss.equalsIgnoreCase(ftfBackup1.getText().trim()) se ftfBackup1.getText().trim() não deve retornar nenhum caracter alfabético?

2) você tem certeza de que ftfBackup1.getText().trim() está mesmo no formato HH:mm:ss?

faça um teste simples. imprima os dois horário no console e veja se eles estão no mesmo formato.

hhmmss = df.format (new java.util.Date());

System.ou.println(hhmmss + " " + ftfBackup1.getText().trim());

if(hhmmss.equalsIgnoreCase(ftfBackup1.getText().trim()) {
    // ...
agora uma dica:

use um framework de agendamento como o Quartz.

R

A variavel canUpdate é uma variavel boolean que esta setada como true.

O formato do campo esta como ##:##:##. Imprimi os dois na tela e estão iguais no formato. Ja estou a uns tres dias tirando e colocando coisa e ja não sei mais o que fazer

Criado 14 de fevereiro de 2010
Ultima resposta 14 de fev. de 2010
Respostas 3
Participantes 3