Commons Apache duplica valores XML

Aew galera estou com um problema na hora de fazer o download de arquivos xml pelo FTP utilizando o Common Apache

esse é o método que eu uso para receber os arquivos que no caso são todos XML

[code]public static void recebeArquivo(List lista, String arquivo, String diretorioLocal) throws SocketException, IOException {

    FTPClient ftp = FTPConexao.conectar();

    FileOutputStream fos = new FileOutputStream(diretorioLocal+"/"+arquivo);

    System.out.println("123 = "+ftp.printWorkingDirectory());
   
    for (Pasta pasta : lista) {
        for (Arquivo arq : pasta.getArquivos()) {
            if (arq.getNome().equals(arquivo)) {

                ftp.changeWorkingDirectory("/"+Constantes.FTP_PATCH +"/"+pasta.getNome());

                System.out.println(ftp.printWorkingDirectory());

                if (ftp.retrieveFile(arquivo, fos)) {
                    System.out.println("Download efetuado com sucesso! "+arquivo);
                } else {
                    System.out.println("Erro ao efetuar download do arquivo. "+arquivo+" "+pasta.getNome());
                }

            }
        }
    }
}[/code]

os arquivos xml são do tipo nfe mas toda vez que eu faço o download os dados do arquivo se duplicam, o estranho é que eu apenas copio o arquivo na abro ele e nada apenas faço o download do arquivo, ele duplica os dados dentro do arquivo xml e assim não passa na validação de nfe, fiz um teste renomeando esse arquivo .xml para .txt ele baixou certinho nao fez nada de errado depois renomeei para .xml novamente e funcionou normal, eu nunca vi acontecer isso o que pode ser??

Obs: antes funcionava tudo certo em servidor linux foi migrado pra servidor windows começou a dar esse problema.

Obrigado.