Olá a todos, estou tentando pegar a data da ultima modificacao de uns arquivos e para isso uso esse codigo
como podem ver ele lista os arquivos num jtable, ate ai tudo certo, o problema é que a data retornana é
31/12/1969
eu ja vasculhei todo o codigo e nao consigo encontrar o “fio solto”
entao estou recorrendo a vcs amigos.
[code]public void Jtable()
{
jTable1.getColumnModel().getColumn(0).setPreferredWidth(100);
jTable1.getColumnModel().getColumn(1).setPreferredWidth(100);
jTable1.getColumnModel().getColumn(2).setPreferredWidth(100);
DefaultTableModel modelo = (DefaultTableModel)jTable1.getModel();
modelo.setNumRows(1);
try
{
File arquivo = new File (jTextField1.getText());
String arquivos [] = arquivo.list();
for (String s : arquivos)
{
File f = new File(s);
DateFormat formatDatacr = new SimpleDateFormat("dd/MM/yyyy");
String data = formatDatacr.format(new Date(f.lastModified()));
modelo.addRow(new Object[]{(jTextField1.getText()+f.getName()),data});
}
}catch (Exception exc){
JOptionPane.showMessageDialog(null,"Naõ pode localizar os arquivos"+ exc);
}
}[/code]
Ai, ai, esse pessoal que não lê o Javadoc:
[quote] Returns the time that the file denoted by this abstract pathname was last modified.
Returns:
A long value representing the time the file was last modified, measured in milliseconds since the epoch (00:00:00 GMT, January 1, 1970),[b] or 0L if the file does not exist or if an I/O error occurs[/b] [/quote]
Notou a semelhança com valor inicial do long e com a data que vc está imprimindo? Isso é pq sua data está retornando 0, portanto, ou seu arquivo não existe, ou o Java é incapaz de ler a data que ele foi modificado.
Além disso, não use DefaultTableModel.
Não existe ?? existe sim mestre, tem uma pasta cheia de fotos na coluna 0 ele retona o endereco, tudo certo, será que o problema esta na DefaultTableModel ? mas obrigadão, vou ler o javadoc, e descobrir oq ta acontecendo. obrigado! oq que intriga que fiz a mesma coisa em outra aplicacao, praticamente no mesmo jeito, e nessa outra aplicacao funciona do jeito que quero e nesse codigo tá agarrado, mas pior de tudo mesmo, foi que joguei o projeto dessa aplicacao fora, agora perdi a referencia que eu tinha. mas ta blz
Alguém tem um problema sério com a leitura:
- Ou seu arquivo não existe, ou o Java é incapaz de ler a data que ele foi modificado.
Você tem certeza que seu objeto file está apontando para o arquivo certo? E que o usuário que da a aplicação java tem permissão de leitura nesse arquivo?
O problema não está no TableModel.
Ixii velho, lendo daki e olhando acolá na api do java, resolvi o problema levou uns 2 minutinhos, tudo muito simples, java é uma maravilha, tudo documentado…sem palavras!
uma linguagem documentada, com varias fontes litetarárias, diversos artigos na internet e milhoes de programadores profissionais no brasil, ensinados em SENAI e centros tecnicos. etc…
não tem como não aprender né broderr.
A James e Sun, meus agradecimentos.
E qual era o problema? Por que não estava funcionando na sua aplicação, exatamente?