La décompression d'un fichier à partir d'InputStream et revenir un autre InputStream

Je suis en train d'écrire une fonction qui accepte un InputStream avec zip fichier de données et qu'il va revenir un autre InputStream avec décompressé données.

Le fichier zip ne contient qu'un seul fichier et donc il n'est pas nécessaire de créer des répertoires, etc...

J'ai essayé de regarder ZipInputStream et les autres, mais je suis déconcerté par tant de différents types de flux en Java.

  • Qu'avez-vous déjà essayer? Veuillez ajouter un peu de code exemple.