Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
public void send(String[] files, String remortPath) throws Exception {
        try {
              ByteArrayOutputStream OutByte = new ByteArrayOutputStream();
              ZipOutputStream OutZip = new ZipOutputStream(OutByte);
 
                //Creation du fichier Zip
                ZipEntry entry = new ZipEntry(temp.getName());
                OutZip.putNextEntry(entry);
                OutZip.setMethod( Deflater.DEFLATED);
                OutZip.setLevel( Deflater.BEST_COMPRESSION);
 
                //Envoie d'une partie du fichier ds le buffer
                InputStream inputStream = new FileInputStream(temp);
                byte buffer[] = new byte[2048];
                int cnt = 0;
                while ((cnt = inputStream.read(buffer)) > 0){
                	OutZip.write(buffer, 0, cnt);
                }                	
                OutZip.finish();
                OutZip.close();
            //Conversion du flux Array vers un Array
            byte[] outByteArray = OutByte.toByteArray();
            inputStream = new ByteArrayInputStream(outByteArray);
 
            ftp.put(inputStream,remortPath);
 
        } catch (Exception e) {
            throw new Exception(e);
        }
    }
Bonjour,

J'essaye d'envoyer un flux zip à travers un FTP. Les fichiers de plus de 2048 Octets sont corrompus. Je ne comprends pas pourquoi.

Merci de votre Aide