public int inflateByteArray(int numberOfBytes,byte[] source,byte[] target) throws DataFormatException {
  if (numberOfBytes == 0)   return 0;
  if (numberOfBytes < 0) {
    System.arraycopy(source,0,target,0,source.length);
    return Math.abs(numberOfBytes);
  }
  inflater.setInput(source,0,numberOfBytes);
  int resultLength=inflater.inflate(target);
  inflater.reset();
  return resultLength;
}

public int inflateByteArray ( int numberOfBytes , byte [ ] source , byte [ ] target ) throws DataFormatException { if ( numberOfBytes == 0 ) return 0 ; if ( numberOfBytes < 0 ) { System . arraycopy ( source , 0 , target , 0 , source . length ) ; return Math . abs ( numberOfBytes ) ; } inflater . setInput ( source , 0 , numberOfBytes ) ; int resultLength = inflater . inflate ( target ) ; inflater . reset ( ) ; return resultLength ; }
decompresses an array of bytes to bytes
