⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 getcountrycode.java

📁 基于Java的地图数据管理软件。使用MySQL数据库管理系统。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                }else if (quXian.equals("三山区")){
                	xianNumber="340222";
                }else if (quXian.equals("叶集区")){
                	xianNumber="341522";
                }else if (quXian.equals("宜秀区")){
                	xianNumber="340811";
                }else if (quXian.equals("迎江区")){
                	xianNumber="340811";
                }
  		      /*if (xianNumber.equals("")){
  		    	xianNumber=getXiangZhengNumberByName(shiName);
  		    	shiNumber=xianNumber.substring(0,4);
  		    	xiangZheng=getXiangZhen(pathStr,shiNumber);
  		    	countryList=getCountryCodeList(pathStr,shiNumber);
  		      }else 
  		      */
  		    	  shiNumber=xianNumber.substring(0,4);//市编码
  		   
         
	      /* if (xianRow.size()==0 || xianRow==null){
	    	  if(!xianNumber.equals("")){
	    	   		  xiangZheng=getXiangZhen(pathStr,shiNumber);
			      countryList=getCountryCodeList(pathStr,shiNumber);
	    	  }
	      }
	      */
	      String [] codeList=getCodeList(pathStr);  //按顺序整理行政村的编码
		 // System.err.println("================"+pathStr);
 	      String countryName1="";
	      String countryName2="";
		  String [] txtStr=txt.readFile(pathStr+"\\cun.txt");
		  String propertyStr="";
		  Vector xianRow=getXianByNumber(xianNumber) ;//在编码表中找出该县区的所有行政村
		    
		 int cunInt=299;
	  	 for(int j=0;j<txtStr.length;j++){   //按array目录下cun.txt文件中的行政村循环
				  countryName1=txtStr[j];  //行政村名
				  xiangZhengName=txtStr10[j];//所属乡镇名称
				  n=0;
			      String myCode="";
				 // System.err.println("=================="+xianNumber+"======================"+xiangZhengName);
				  zhengNumber=getZhengNumber(xianNumber,xiangZhengName);//根据县区编码和array目录中xiangzhen.txt文件中的乡镇名称查找乡镇对应的编码
				  if (zhengNumber==null){
					  xiangZhengName=xiangZhengName.substring(0,2);
					  zhengNumber=getZhengNumber(xianNumber,xiangZhengName);
					
						  
				  }
				  if (zhengNumber==null) {//如果在编码表中找不到乡镇对应的编码就在从久其软件导出的编码中查找
			        for(int k=0;xianRow!=null && k<xianRow.size();k++){
						countryName2=((LoadRow)xianRow.get(k)).getCountryName();
						System.err.println("========================"+countryName2);
		  		       if(countryName2.indexOf(countryName1)!=-1)
					     {
		  		    	   myCode=((LoadRow)xianRow.get(k)).getCountryCode();
		  			    	   break;
					     }
					  } 	
					  zhengNumber=myCode.substring(0,9);//乡镇编码
				  }
				  countryCode=zhengNumber.substring(0,9)+codeList[j];
				  propertyStr=txtStr10[j]+"\t"+txtStr3[j]+"\t"+txtStr4[j]+"\t"+
		             txtStr5[j]+"\t"+txtStr6[j]+"\t"+txtStr7[j]+"\t"+txtStr8[j]+"\t"+
		             txtStr9[j]+"\t"+txtStr11[j]+"\t"+txtStr1[j]+"\r\n";
			         myStr+=countryCode+"\t"+countryName1+"\t"+shiName+"\t"+quXian+"\t"+propertyStr;
				  
				/* if (xianRow==null || xianRow.size()==0){
				 //if (n==0){
					     for(int p=0;p<xiangZheng.length;p++){
				    	 lenXiangInt=xiangZheng[p].length();
					    	 newZhengName=xiangZheng[p].substring(0,lenXiangInt-3);
					      	 if (newZhengName.indexOf(txtStr10[j])!=-1){
					    		 countryCode=xianNumber+xiangZheng[p].substring(lenXiangInt-3,lenXiangInt);
					    		 break;
					    	 }
					     }
					     countryCode=countryCode+countryList[j];
						 arrayStr+=countryCode+"\t"+countryName1+"\t"+shiName+"\t"+quXian+"\t"+txtStr10[j]+"\t"+txtStr3[j]+"\t"+txtStr4[j]+"\t"+
			             txtStr5[j]+"\t"+txtStr6[j]+"\t"+txtStr7[j]+"\t"+txtStr8[j]+"\t"+
			             txtStr9[j]+"\t"+txtStr11[j]+"\t"+txtStr1[j]+"\r\n";
						 
					 }*/
				
			  }
		
		 
    }
	   myStr+=arrayStr;
	   System.err.println(myStr); 
	   FileOperate fileOperate = new FileOperate();
       fileOperate.newFile("d:\\country_"+cityName+".txt",myStr);
       //fileOperate.newFile("d:\\array_"+cityName+".txt",arrayStr);
	
  }
  
  
  public void getXiangZhenNumber(){
	   GetXingZhenCode gxz=new GetXingZhenCode();
	   gxz.read();
	   String myNumber=gxz.getXiangZhenName("3415","青山");
	   System.err.println("=============="+myNumber);
  }
  
  /**
   * 根据市名添加新县(区)编码
   * @param shiName
   * @return
   */  
  public String  getXiangZhengNumberByName(String shiName){
	  GetXingZhenCode gxz=new GetXingZhenCode();
	  gxz.read();
	  ReadTxt txt = new ReadTxt();
	  String shiNumber=gxz.getShiNumbere(shiName);
	  String [] txtStr1=txt.readFile("file\\bianma\\number.txt");
	  String [] txtStr2=txt.readFile("file\\bianma\\name.txt");
	  String xianNumber="";
	  int maxInt=0;
	  int numberInt=0;
	  for(int i=0;i<txtStr1.length;i++){
		  xianNumber=txtStr1[i];
		  if(xianNumber.indexOf(shiNumber)!=-1  && xianNumber.substring(6,12).equals("000000")){
			  numberInt=Integer.parseInt(xianNumber.substring(0,6));
			  if (maxInt<numberInt) maxInt=numberInt;
		  }
	  }
	  maxInt=maxInt+1;
	  return maxInt+"";
  }
  /**
   * 根据市编码和乡镇关键字查询乡镇信息
   * @param xianNumber
   * @param xiangZhen
   * @return
   */
  public String getXiangZhenName1(String xianNumber,String xiangZhen){
	  ReadTxt txt = new ReadTxt();
	  String [] txtStr1=txt.readFile("file\\bianma\\number.txt");
	  String [] txtStr2=txt.readFile("file\\bianma\\name.txt");
	  
	  String unitName="";
	  String unitNum="";
	  String xingZhenBianMa="";
	 
	  for (int i=0;i<txtStr1.length;i++){
		   unitName=txtStr2[i];
		   unitNum=txtStr1[i];
		  if (unitName.indexOf(xiangZhen)!=-1 && unitNum.indexOf(xianNumber)!=-1 && (unitName.indexOf("乡")!=-1 || unitName.indexOf("镇")!=-1))
		  {
			  unitName=txtStr2[i];
			  return unitName;
		  }
	  }
	
 	  return null;
  }
  /**
   * 根据xiangzhen.txt里的乡镇数据,组合乡镇编码
   * @param filePath
   * @return
   */
  public String [] getXiangZhen(String filePath,String shiNumber){
	  ReadTxt txt = new ReadTxt();
	  ArrayList xiangList=new ArrayList();
	  String xiangName="";
	  String [] txtStr1=txt.readFile(filePath+"\\xiangzhen.txt");
	  int n=0;
	  for(int i=0;i<txtStr1.length;i++){
		  n=0;
		  for(int j=0;xiangList!=null&&j<xiangList.size();j++){
			  xiangName=(String)xiangList.get(j);
			  if(xiangName.equals(txtStr1[i]))
				  n++;
		  }
		  if (n==0) {
				  xiangList.add(txtStr1[i]);
		  }
	  }
	   String [] xiangNumber=new String[xiangList.size()];
	   int zhengInt=99;
	   int xiangInt=199;
	    for(int i=0;i<xiangList.size();i++){
	    	 xiangName=(String)xiangList.get(i);
	    	 if (xiangName.indexOf("乡")==-1 || xiangName.indexOf("镇")==-1){
	    		 
	    		  xiangName=getXiangZhenName1(shiNumber,xiangName);
	    		  
	    	 }
	    	 if(xiangName==null || xiangName.equals("")) {
	    		 xiangName=(String)xiangList.get(i);
	    		 
	    	 }
	    	 
	    	 if(xiangName.indexOf("镇")!=-1) {
	    		  zhengInt=zhengInt+1;
	    		  xiangNumber[i]=xiangName+zhengInt;
				 
			  }else{
				  xiangInt=xiangInt+1;
				  xiangNumber[i]=xiangName+xiangInt;
				  
			  }
	    	
	    }
	    
	    return xiangNumber;
  }
  
  /**
   * 根据xiangzhen.txt里的乡镇数据,组合行政村编码
   * @param filePath
   * @return
   */
  public String [] getCountryCodeList(String filePath,String shiNumber){
	  ReadTxt txt = new ReadTxt();
	  ArrayList xiangList=new ArrayList();
	  String xiangName="";
	  String [] txtStr1=txt.readFile(filePath+"\\xiangzhen.txt");
	  String [] txtStr2=getXiangZhen(filePath,shiNumber);
	  int n=0;
	  
	   String [] xiangNumber=new String[txtStr1.length];
	    int countryInt=300;
	    for(int i=0;i<txtStr2.length ;i++){
	    	 countryInt=300;
	    	 xiangName=txtStr2[i];
	    	 for(int j=0;j<txtStr1.length;j++){
	    		 if(xiangName.indexOf(txtStr1[j])!=-1) {
	    			 countryInt=countryInt+1;
		    		  xiangNumber[j]=countryInt+"";
	    	 }
	    	 
	    }
   }
	    
	    return xiangNumber;
  }
  public String [] getCodeList(String filePath){
	  ReadTxt txt = new ReadTxt();
	  ArrayList xiangList=new ArrayList();
	  String xiangName="";
	  String [] txtStr1=txt.readFile(filePath+"\\xiangzhen.txt");
	  String [] txtStr2=txtStr1;
	  String [] codeNumber=new String[txtStr1.length];
	    int countryInt=300;
	    for(int i=0;i<txtStr2.length ;i++){
	    	 countryInt=300;
	    	 xiangName=txtStr2[i];
	    	 for(int j=0;j<txtStr1.length;j++){
	    		 if(xiangName.equals(txtStr1[j])) {
	    			 countryInt=countryInt+1;
	    			 codeNumber[j]=countryInt+"";
	    	 }
	    	 
	    }
   }
	    
	    return codeNumber;
  }
  
  public boolean isEmptyrow(){
    boolean empty = true;
    if (rowData != null) {
      for (int i = 0; i < rowData.length; i++) {
        if (!(rowData[i].getContents().equals(""))) {
          empty = false;
          break;
        }
      }
    }else{
      return true;
    }
    return empty;
  }

  public static void main(String[] args) {
	   GetCountryCode gcc=new GetCountryCode();
	   gcc.read();
	   gcc.getCountryList("D:\\安徽省通达数据\\宣城市","宣城市");
	

	 
	   
  }
}

⌨️ 快捷键说明

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