コード例 #1
0
  /**
   * ***************
   *
   * @param zipFileName the name of the resulting zip file
   * @param shpFileName the name of the shp file to compress
   * @return
   */
  public static ZipOutputStream compressFiles(
      String tempUserZipDir,
      String tempUserDir,
      String zipFileName,
      String origName,
      String destName) {
    ZipOutputStream out;
    try {
      out = new ZipOutputStream(new FileOutputStream(tempUserZipDir + zipFileName));
      File shpFile = new File(tempUserDir + origName + ".shp");
      File dbfFile = new File(tempUserDir + origName + ".dbf");
      File shxFile = new File(tempUserDir + origName + ".shx"); // sbn&&sbx&&CPG
      File prjFile = new File(tempUserDir + origName + ".prj");

      File shpDestFile = shpFile;
      File dbfDestFile = dbfFile;
      File shxDestFile = shxFile;
      File prjDestFile = prjFile;

      File sldFile = new File(tempUserDir + origName + ".sld");
      File sldDestFile = sldFile;
      File cpgFile = new File(tempUserDir + origName + ".cpg");
      File cpgDestFile = cpgFile;

      if (destName != null) {
        shpDestFile = new File(tempUserDir + destName + ".shp");
        shpFile.renameTo(shpDestFile);
        dbfDestFile = new File(tempUserDir + destName + ".dbf");
        dbfFile.renameTo(dbfDestFile);
        shxDestFile = new File(tempUserDir + destName + ".shx");
        shxFile.renameTo(shxDestFile);
        prjDestFile = new File(tempUserDir + destName + ".prj");
        prjFile.renameTo(prjDestFile);
        sldDestFile = new File(tempUserDir + destName + ".sld");
        sldFile.renameTo(sldDestFile);
        cpgDestFile = new File(tempUserDir + destName + ".cpg");
        cpgFile.renameTo(cpgDestFile);
      }
      out = PublishUtility.compress(out, shpDestFile);
      out = PublishUtility.compress(out, dbfDestFile);
      out = PublishUtility.compress(out, shxDestFile);
      out = PublishUtility.compress(out, prjDestFile);
      if (sldDestFile.exists()) {
        out = PublishUtility.compress(out, sldDestFile);
      }
      if (cpgDestFile.exists()) {
        out = PublishUtility.compress(out, cpgDestFile);
      }
      out.close();
    } catch (Exception ex) {
      logger.error("Exception compressing: " + zipFileName + " - " + ex);
      return null;
    }
    return out;
  }