title: Why is BufferedOutputStream looking for META-INF/MANIFEST.MF?
body: <p>I'm writing a program that needs to extract a zip file. I have code that should work, but for some reason throws a <code>java.io.FileNotFoundException</code>.</p>
  
  <p>Here is the method:</p>
  
  <pre><code>private static void unzip() {
      ZipInputStream input = null;
      try {
          input = new ZipInputStream(new BufferedInputStream(new FileInputStream(SERVER_FOLDER + File.separator + "folder" + File.separator + "mods.zip")));
      } catch (FileNotFoundException e) {
          System.err.println("The program has encountered an error and needs to stop.\nPlease notify the program author of this problem.");
          e.printStackTrace();
          System.exit(-1);
      }
  
      ZipEntry entry;
      final int BUFFER = 8192;
  
      System.out.print("Extracting...");
  
      try {
          byte[] data = new byte[BUFFER];
          while ((entry = input.getNextEntry()) != null) {
              BufferedOutputStream output = new BufferedOutputStream(
                      new FileOutputStream(entry.getName()), BUFFER);
              int count;
              while ((count = input.read(data, 0, BUFFER)) != -1) {
                  output.write(data, 0, BUFFER);
              }
              input.closeEntry();
              output.flush();
              output.close();
          }
          input.close();
      } catch (IOException e) {
          System.err.println("The installer has encountered an error and needs to stop.\nPlease notify the program author of this problem.");
          e.printStackTrace();
          System.exit(-1);
      }
      System.out.println("Done");
  }
  </code></pre>
  
  <p>This produces the following console output:</p>
  
  <pre><code>java.io.FileNotFoundException: META-INF/MANIFEST.MF (No such file or directory)
      at java.io.FileOutputStream.open(Native Method)
      at java.io.FileOutputStream.&lt;init&gt;(FileOutputStream.java:213)
      at java.io.FileOutputStream.&lt;init&gt;(FileOutputStream.java:101)
      at me.smithb99.installer.ServerInstaller.unzipMods(ServerInstaller.java:330)
      at me.smithb99.installer.ServerInstaller.installServer(ServerInstaller.java:84)
      at me.smithb99.installer.Main.main(Main.java:71)
  </code></pre>