Estou tentando juntar arquivos que quebrei em partes. Preciso que o programa descubra em quantas partes o arquivo está quebrado. Os arquivos partidos são nomeados assim: teste_parte_(numero da parte).part, por exemplo: teste_parte_001.part, teste_parte_010.part. Até agora consegui fazer este codigo, porém ele está errado, não sei como estanciar objetos da classe File.
import java.io.*;
public class JuntaArquivo {
public static void main(String[] args) throws Exception {
String base = "teste_parte_";
int contArq = 0;
File f = null;
FileOutputStream out = new FileOutputStream("teste2.exe");
FileInputStream in = null;
boolean done = false;
while(!done) {
if(contArq < 10) f = new File(base + "00" + contArq + ".part");
else if(contArq < 100) f = new File(base + "0" + contArq + ".part");
else f = new File(base + contArq + ".part");
if(f.exists()) contArq++;
else done = true;
}
int contArq2 = 0;
int c = 0;
boolean estaFechado = true;
while(contArq > contArq2) {
if(estaFechado) {
if(contArq2 < 10) in = new FileInputStream(base + "00" + contArq2 + ".part");
else if(contArq2 < 100) in = new FileInputStream(base + "0" + contArq2 + ".part");
else in = new FileInputStream(base + contArq2 + ".part");
estaFechado = false;
}
c = in.read();
if(c == -1) {
contArq2++;
in.close();
estaFechado = true;
}
else out.write(c);
}
if(c != -1) in.close();
out.close();
}
}
Quem puder me ajudar ficarei grato.