Ler arquivo zip

Fala galera!!!

Esse é o meu primeiro post aqui no fórum e eu tenho uma dividazinha chata.
Eu estou criando uma classe que comprime e descomprime arquivos zip, pra comprimir tudo bem, agora quando eu vou descomprimir ela cria um arquivo vazio, de algum modo não está lendo o arquivo passado, tem um println lá que informa o nome do arquivo mas mesmo assim não lê. E agora?

O método que eu estou usando é esse:

[code] private void descompact(String name) throws IOException {
try {
ZipInputStream enterZip = new ZipInputStream(
new BufferedInputStream(
new FileInputStream(name)));

		int to = name.lastIndexOf(".");
		String arq = name.substring(0, to);

		BufferedOutputStream saida = new BufferedOutputStream(
								new FileOutputStream(arq));

		System.out.println("Descompactando " + name + "...");

		int b;
		while ((b = enterZip.read()) != -1) {
			System.out.println(b);
			saida.write(b);
		}

		enterZip.close();
		saida.close();
	}
	catch (FileNotFoundException e) {
		System.out.println("Arquivo '" + name + "' invalido.");
	}
}

[/code]