@@ -0,0 +1,1147 @@
+package demo;%0A%0Aimport java.io.FileInputStream;%0Aimport java.io.InputStream;%0A%0Aimport org.biojava.nbio.core.util.UncompressInputStream;%0Aimport org.slf4j.Logger;%0Aimport org.slf4j.LoggerFactory;%0A%0A/**%0A * Uncompresses a single tarred or zipped file, writing output to stdandard out%0A */%0Apublic class UncompressFile %7B%0A    private final static Logger logger%0A%09%09= LoggerFactory.getLogger(UncompressFile.class);%0A%0A    /**%0A%09 * Reads a file, uncompresses it, and sends the result to stdout.%0A%09 * Also writes trivial statistics to stderr.%0A%09 * @param args An array with one String element, the name of the file to read.%0A%09 * @throws IOException for any failure%0A%09 */%0A%09public static void main(String%5B%5D args) throws Exception %7B%0A%0A%09%09if (args.length != 1) %7B%0A%09%09%09logger.info(%22Usage: UncompressInputStream %3Cfile%3E%22);%0A%09%09%09System.exit(1);%0A%09%09%7D%0A%09%09long beg = System.currentTimeMillis();%0A%0A%09%09long tot;%0A%09%09try (InputStream in = new FileInputStream(args%5B0%5D); %0A         ) %7B%0A%09%09%09tot = UncompressInputStream.uncompress(in, System.out);%0A%09%09%7D%0A%0A%09%09long end = System.currentTimeMillis();%0A%09%09logger.info(%22Decompressed %7B%7D bytes%22, tot);%0A%09%09logger.info(%22Time: %7B%7D seconds%22, (end - beg) / 1000);%0A%09%7D%0A    %0A%7D%0A

move uncompressinputstream main into demo class