Eh o seguinte galera, uso o metodo abaixo para abrir um ou mais arquivos:
public void openFile()
{
File[] files = fc.getSelectedFiles();
for(int i = 0; i < files.length; i++)
{
arquivos.add(files[i]);
fileName = files[i].getName();
fileSize = files[i].length();
int num = arquivos.size();
if(fileName.indexOf(".mov") != -1)
{
log.append("Arquivo #"+num+": "+fileName+" -- Tamanho: "+fileSize+" bytes." + newline);
}
else
{
JOptionPane.showMessageDialog(null, "A extensão do arquivo deve ser \".mov\".", "Atenção", JOptionPane.WARNING_MESSAGE);
arquivos.clear();
}
}
ite = arquivos.iterator();
//log.append("Teste: "+ite+"" + newline);
}
E no codigo abaixo para enviar um arquivo para um seguinte diretorio:
public void sendFile()
{
try
{
while(ite.hasNext())
{
File file = (File) ite.next();
fileUpload = "/"+file.getName()+"/";
output = filePath + fileUpload;
InputStream in = new FileInputStream(file);
OutputStream out = new FileOutputStream(output);
bytesUploaded = 0;
byte[] buffer = new byte[100000];
int percVal = 0;
//log.append("Enviando: " + file.getName() + newline + newline);
while((tamanho = in.read(buffer)) >= 0)
{
bytesUploaded += tamanho;
percVal = (int) ((bytesUploaded / fileSize) * 100);
currentFileUpPercent = percVal;
barra.setValue(currentFileUpPercent);
out.write(buffer, 0, tamanho);
}
in.close();
out.close();
log.append("Arquivo enviado com sucesso: " + file.getName() + newline + newline);
barra.setValue(0);
}
}
catch(Exception e)
{
log.append("Erro ao enviar o arquivo: " + newline + e.getMessage());
log.invalidate();
}
}
Gostaria de saber, como faco para que minha barra mostre o progresso total do envio dos arquivos selecionados e nao um por um…
Alguma dica???
Abracos!!!
Rafael

