Exemplo n.º 1
0
  private boolean readFileHeader(MyBufferedInputStream baseStream, String fileToFind)
      throws IOException {
    LocalFileHeader header = new LocalFileHeader();
    header.readFrom(baseStream);

    if (header.Signature != LocalFileHeader.FILE_HEADER_SIGNATURE) {
      return false;
    }
    if (header.FileName != null) {
      myFileHeaders.put(header.FileName, header);
      if (header.FileName.equalsIgnoreCase(fileToFind)) {
        return true;
      }
    }
    if ((header.Flags & 0x08) == 0) {
      baseStream.skip(header.CompressedSize);
    } else {
      findAndReadDescriptor(baseStream, header);
    }
    return false;
  }