2009-10-28 6 views
1

J'ai regardé en ligne avec des résultats mitigés, mais existe-t-il un moyen d'extraire par programme un fichier zip sur le BB? Très basique mon application affichera différents types de fichiers cryptés, et ces fichiers sont livrés dans un fichier zip. Mon idée était d'amener l'utilisateur à parcourir le fichier sur sa carte SD, de le sélectionner et d'extraire ce dont j'avais besoin en tant que flux à partir du fichier. Est-ce possible?Blackberry - Extraire par programme/ouvrir le fichier zip

Répondre

2

Utilisez GZIPInputStream

Exemple:

try 
    { 
     InputStream inputStream = httpConnection.openInputStream(); 
     GZIPInputStream gzis = new GZIPInputStream(inputStream); 
     StringBuffer sb = new StringBuffer(); 

     char c; 
     while ((c = (char)gzis.read()) != -1) 
     { 
      sb.append(c); 
     } 

     String data = sb.toString(); 

     gzis.close(); 
    } 
    catch(IOException ioe) 
    { 
    } 
+0

Merci pour l'exemple de code. Je vais essayer. Toujours rassembler des idées et des recherches, mais ce code ressemble à mes applications windows/mac qui utilisent Java 1.5 (juste pas de classes ZipEntry et ZipFile dans BB à utiliser) – KKlucznik

1

Juste deux choses:

  • Dans l'API BB il n'y a que gzip et zlib, et aucun support multiple de compression de fichiers, il est donc pas possible de compresser plusieurs fichiers et d'en extraire un seul.
  • Jusqu'à mon expérience, cette fonctionnalité va voler sur simulateur, mais peut être vraiment la performance mort sur l'appareil réel

Voir How to retrieve data from a attached zip file in Blackberry application?

PS En fait, vous pouvez mettre en œuvre personnalisée flux multi-entrées et analyser après décompresser, mais cela semble inutile, si vous voulez que ce format d'archive soit pris en charge dans d'autres applications.

+0

Merci pour l'info. Je ne savais pas que cela ne soutenait que ces types, et en les regardant, vous avez absolument raison. ne peut pas extraire un fichier et serait très inefficace. Connaissez-vous des bibliothèques tierces pouvant être ajoutées à une application BB pour effectuer ce type d'extraction? – KKlucznik

+0

Votre bienvenue! Je n'ai pas entendu parler d'alternatives. Je vous suggère de rechercher des bibliothèques de compression j2me, opensource préféré. –

Questions connexes