jzccontrol.java

来自「基于Java的地图数据管理软件。使用MySQL数据库管理系统。」· Java 代码 · 共 430 行 · 第 1/2 页

JAVA
430
字号
            temp.set3_4ColumnXiangzhenName(ww.wuchen_xiangzhen[i]);
            temp.set1_9ColumnDixing(getdixing(ww.wdixing[i]));
            temp.set3_1ColumnZRCNum(ww.wzirancun[i]);
            temp.setExcelReadMethod(null, adder);
            temp.set1_1ColumnRenkou(ww.wuwei_renkou[i]);
            if (getdixing(ww.wdixing[i]).equals("3")) {
              temp.set1_8ColumnHaveMatou("1");
              temp.set1_7ColumnMatouDis("0.0");
              temp.set1_6ColumnHaveRoad("1");
            }
            temp.set1_3ColumnSuitRoad("1");
            String pos = (String) ItemValue.jzcZuoBiao.get(ww.wuchen_xiangzhen[i]+ ww.wuwei_cun[i]);
            if (pos != null && pos.indexOf("|") > -1) {
              temp.set1_5ColumnLongitude(pos.substring(0, pos.indexOf("|")));
              temp.set1_4ColumnLatitude(pos.substring(pos.indexOf("|") + 1));
            }
            else {
              bo.println("\t"+ww.wuchen_xiangzhen[i] + " " + ww.wuwei_cun[i] + " 没有找到坐标,需要手工指定");
              temp.set1_5ColumnLongitude("118.88888888");
              temp.set1_4ColumnLatitude("31.88888888");
            }
            newjzc.add(temp);
          }
        }
      }
      Hashtable temp = new Hashtable();
      for (int i = 0; i < newjzc.size(); i++) {
        String XZname = ( (Jzcjbqk) newjzc.get(i)).getXiangzhen_Name();
        Vector jzcs = (Vector) temp.get(XZname);

        if (jzcs == null) {
          jzcs = new Vector();
          temp.put(XZname, jzcs);
        }
        jzcs.add( (Jzcjbqk) newjzc.get(i));

      }
      jzctb = new XiangzhenJzcjbqk[temp.values().size()];
      Enumeration keys = temp.keys();
      int xz = 0;
      while (keys.hasMoreElements()) {
        String XZname = (String) keys.nextElement();
        jzctb[xz] = new XiangzhenJzcjbqk(XZname);
        Vector jzcs = (Vector) temp.get(XZname);
        for (int i = 0; jzcs != null && i < jzcs.size(); i++) {
          jzctb[xz].addJzcjbqk( (Jzcjbqk) jzcs.get(i));
        }
        xz++;
      }

//    for (int i = 0; i < jzc.length; i++) {
//      if (jzc[i] != null) {
//        tempFind = false;
//        if (this.jzctb == null) {
//          this.jzctb = new XiangzhenJzcjbqk[1];
//          this.jzctb[0] = new XiangzhenJzcjbqk(jzc[i].getXiangzhen_Name());
//          this.jzctb[0].addJzcjbqk(jzc[i]);
//        }
//        else {
//          for (int j = 0; j < this.jzctb.length; j++) {
//
//            if (StringOper.isInclude(this.jzctb[j].getXiangzhenName(),jzc[i].getXiangzhen_Name())) {
//              this.jzctb[j].addJzcjbqk(jzc[i]);
//              tempFind = true;
//              break;
//            }
//          }
//          if (!(tempFind)) {
//
//
//            {
//              XiangzhenJzcjbqk[] temp = new XiangzhenJzcjbqk[this.jzctb.length +
//                  1];
//              for (int k = 0; k < this.jzctb.length; k++) {
//                temp[k] = this.jzctb[k];
//              }
//              temp[this.jzctb.length] = new XiangzhenJzcjbqk(jzc[i].
//                  getXiangzhen_Name());
//              temp[this.jzctb.length].addJzcjbqk(jzc[i]);
//              this.jzctb = temp;
//            }
//          }
//        }
//      }
//    }

    }
    catch (FileNotFoundException ex) {
      ex.printStackTrace();
    }
  }
  private String getdixing(String dixing){
      if ((dixing.indexOf("平原") != -1)||(dixing.indexOf("微丘") != -1)||(dixing.indexOf("丘陵") != -1)) {
        return 1+"";
      }
      else if ((dixing.indexOf("山岭") != -1)||(dixing.indexOf("重丘") != -1)) {
        return 2+"";
      }
      else if(dixing.indexOf("岛屿") != -1){
        return 3+"";
      }else{
         return 1+"";
      }
    }

  /**
   * 将民政部门array的文本数组乡镇、建制村赋值到array里来
   */
  private void setwwArray() {

    int temp = 0, tem0 = 0;
    this.arrayMinzheng = new XiangzhenXZC[ww.wuwei.length];
    for (int i = 0; i < this.arrayMinzheng.length; i++) {
      this.arrayMinzheng[i] = new XiangzhenXZC();
      this.arrayMinzheng[i].setXiangzhenName(ww.wuwei[i][0]);
      if (i == this.arrayMinzheng.length - 1) {
        temp = ww.wuwei_cun.length;
      }
      else {
        temp = Integer.parseInt(ww.wuwei[i + 1][1]);
      }
      tem0 = Integer.parseInt(ww.wuwei[i][1]);
      for (int j = tem0; j < temp; j++) {
       this.arrayMinzheng[i].addXZC(ww.wuwei_cun[j],j);
      }
    }
  }

  public void compare() {
//    this.printThis();
    for (int i = 0; i < this.jzctb.length; i++) {
      for (int j= 0;  j< this.arrayMinzheng.length; j++) {
        if (StringOper.isInclude(jzctb[i].getXiangzhenName(),this.arrayMinzheng[j].getXiangzhenName())) {
          this.compareAndRemove(this.jzctb[i],this.arrayMinzheng[j]);
        }

      }
    }
    this.addXZCToJzcjbqk();
//    this.printThis();
  }

  private void addXZCToJzcjbqk(){
      //     add xzc
      String[] xzcChildren = null;
      for (int i = 0; i < this.arrayMinzheng.length; i++) {
          xzcChildren = arrayMinzheng[i].getChildren();
          if (xzcChildren != null) {
            Jzcjbqk[] temp = arrayMinzheng[i].getNewJzcjbqk(this.adder, this.ww);
            for (int j = 0; j < temp.length; j++) {
              this.newjzc.add(temp[j]);
//              System.out.println("剩余 : [" + temp[j].getXiangzhen_Name() + "]." + temp[j].getJianzhicunName());
            }
          }
      }
  }
  private void compareAndRemove(XiangzhenJzcjbqk jzc, XiangzhenXZC xzc) {
    Jzcjbqk[] jzcChildren = jzc.getHisJZC();
    String[] xzcChildren = xzc.getChildren();

    if (xzcChildren == null) {
      return;
    }
    else {
      for (int i = 0; i < jzcChildren.length; i++) {
        if (xzcChildren != null) {
          for (int j = 0; j < xzc.getChildren().length; j++) {
//            if ((StringOper.isInclude("东圩",jzcChildren[i].getJianzhicunName()))&&(StringOper.isInclude("东圩",xzcChildren[j]))) {
////              System.err.println(jzcChildren[i].getXiangzhen_Name() + " i=" + i + " | " + xzc.getXiangzhenName() + " j=" + j);
//            }
            if (this.isSumulate(jzcChildren[i], xzcChildren[j])) {
              xzc.removeXZC(xzcChildren[j]);
              xzcChildren = xzc.getChildren();
//         add jzc

              this.newjzc.add(jzcChildren[i]);
//              System.out.println("Excel原有 : [" + jzcChildren[i].getXiangzhen_Name() + "]." + jzcChildren[i].getJianzhicunName());
//              break;
            }
          }
        }else{
          break;
        }
      }
    }
  }


  public Jzcjbqk[] getJianzhicun(){
    Jzcjbqk[] temp = new Jzcjbqk[this.newjzc.size()];
    for (int i = 0; i < temp.length; i++) {
      temp[i] = (Jzcjbqk)this.newjzc.elementAt(i);
    }
    return temp;
  }

  private boolean isSumulate(Jzcjbqk jzc, String xzc) {
    return StringOper.isInclude(jzc.getJianzhicunName(), xzc);
  }

  private void printThis(){

    System.out.println("//******************************************************************start//");
    System.out.println("----------------------|jzctb:" + this.jzctb.length);
    for (int i = 0; i < this.jzctb.length; i++) {
      System.out.println(this.jzctb[i]);
    }
    System.out.println("----------------------|arrayMinzheng:" + this.arrayMinzheng.length);
    for (int i = 0; i < this.arrayMinzheng.length; i++) {
      System.out.println(this.arrayMinzheng[i]);
    }
    System.out.println("//******************************************************************end//");
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?