O arquivo enviado ao servidor ftp, especialmente imagens jpg, ficam com 1 bit a menos que o original, acredito que o fato de o servidor ftp estar em um sistema unix, o byte "0x0A" esteja sendo convertido para "0x0D 0x0A". Estou usando commons net para o envio, e tentei setar o fileTransferMode para BLOCK_TRANSFER_MODE e o fileType para BINARY_FILE_TYPE, mas não surtiram efeitos, os arquivos de imagens continuam com 1 bit a menos.
public void inserir(InputStream input, String nomeArquivo, String pasta){
try {
ftp.changeWorkingDirectory(pastaPadrao+"/"+ pasta);
ftp.setFileTransferMode(ftp.BLOCK_TRANSFER_MODE);
ftp.setFileType(ftp.BINARY_FILE_TYPE);
if(ftp.storeFile(nomeArquivo, input)){
System.out.println("Arquivo armazenado!");
}else {
System.out.println("Arquivo não armazenado!");
}
ftp.changeWorkingDirectory(pastaPadrao);
} catch (Exception e) {
// TODO: handle exception
}
}
Alguma dica ?