📄 villagenewnumber.java
字号:
package net.aetherial.gis.baobu.countryCode;
import java.awt.List;
import java.io.File;
import java.util.ArrayList;
import java.util.Vector;
import net.aetherial.gis.jiaotongbu.output.publicuse.Item;
import net.aetherial.gis.our.duibi.readXLS.ReadFile;
import net.aetherial.gis.output.FileOperate;
import net.aetherial.gis.output.toLd.OpenDirectory;
public class VillageNewNumber {
private int [] flagArray = null;
//获取上次行政村编码表信息
public List getCunList(){
List temp = new List ();
String lineStr = "";
ReadTxt txt = new ReadTxt();
String [] txtStr=txt.readFile("file\\bianma\\xiangzheng.txt");
for (int i = 0; txtStr != null && i < txtStr.length ; i++){
lineStr = txtStr[i];
temp.add(lineStr);
}
return temp;
}
//获取县的信息
public List getXianList(){
List temp = new List ();
String lineStr = "";
ReadTxt txt = new ReadTxt();
String [] txtStr=txt.readFile("file\\bianma\\xian.txt");
for (int i = 0; txtStr != null && i < txtStr.length ; i++){
lineStr = txtStr[i];
temp.add(lineStr);
}
return temp;
}
//获取乡镇的信息
public List getXiangList(){
List temp = new List ();
String lineStr = "";
ReadTxt txt = new ReadTxt();
String [] txtStr=txt.readFile("file\\bianma\\xiang.txt");
for (int i = 0; txtStr != null && i < txtStr.length ; i++){
lineStr = txtStr[i];
temp.add(lineStr);
}
return temp;
}
//根据县、乡镇编码取行政村的编码
public String getCountryNumber(String cunName ,String number,List list ){
String lineStr = "";
String [] childStr = null;
for (int i = 0; list != null && i < list.getItemCount(); i++ ){
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
if (childStr[0].indexOf(cunName) != -1 && childStr[1].substring(0,9).equals(number) ){
return childStr[0];
}
}
return null;
}
//根据县编码取县名
public String getXianName(String xianNumber ,List list ){
//System.err.println("================"+xianNumber);
String lineStr = "";
String [] childStr = null;
for (int i = 0; list != null && i < list.getItemCount(); i++ ){
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
if (childStr[0].substring(0,6).equals(xianNumber) ){
return childStr[1];
}
}
return null;
}
public List getAllJzc(){
List temp = new List ();
String lineStr = "";
ReadTxt txt = new ReadTxt();
String [] txtStr=txt.readFile("file\\bianma\\Jzcjbqk.txt");
for (int i = 0; txtStr != null && i < txtStr.length ; i++){
lineStr = txtStr[i];
if (lineStr.length() == 0) continue;
temp.add(lineStr);
}
return temp;
}
//获取经纬度
public String [] getJzcJW(String number ,String name, List list ){
String [] temp = new String [2];
temp[0] = "";
temp[1] = "";
String lineStr = "";
String [] childStr = null;
for (int i = 0; list != null && i < list.getItemCount(); i++ ){
if (flagArray[i] == 1 ) continue;
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
if (childStr[0].trim().equals(number) && childStr[1].trim().equals(name) ){
temp[0] = childStr[8].trim() ;
temp[1] = childStr[9].trim() ;
flagArray[i] = 1;
return temp;
}
}
return null;
}
//根据市编码取市名
public String getShiName(String shiNumber ,List list ){
String lineStr = "";
String [] childStr = null;
for (int i = 0; list != null && i < list.getItemCount(); i++ ){
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
if (childStr[0].substring(0,4).equals(shiNumber) ){
return childStr[1];
}
}
return null;
}
//根据乡镇编码取乡镇名
public String getXiangZhengName(String xiangNumber ,List list ){
String lineStr = "";
String [] childStr = null;
for (int i = 0; list != null && i < list.getItemCount(); i++ ){
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
if (childStr[0].substring(0,9).equals(xiangNumber) ){
return childStr[1];
}
}
return null;
}
//在array文件夹中取行政村的属性
public String getCountryInfo(String pathStr, String xiangName, String cunName ){
ReadTxt txt = new ReadTxt();
String [] txtStr2=txt.readFile(pathStr+"\\cun.txt"); //行政村
String [] txtStr3=txt.readFile(pathStr+"\\dixing.txt");//地形
String [] txtStr4=txt.readFile(pathStr+"\\dukou.txt"); //渡口
String [] txtStr6=txt.readFile(pathStr+"\\mianji.txt");//面积
String [] txtStr7=txt.readFile(pathStr+"\\renkou.txt");//人口
String [] txtStr9=txt.readFile(pathStr+"\\tiaojian.txt");//条件
String [] txtStr10=txt.readFile(pathStr+"\\xiangzhen.txt");//乡镇
String [] txtStr11=txt.readFile(pathStr+"\\zirancun.txt");//自然村数量
String [] txtTemp=txt.readFile(pathStr+"\\beizhu.txt");//备注
String [] txtTemp5=txt.readFile(pathStr+"\\jinji.txt");//经济
String [] txtTemp8=txt.readFile(pathStr+"\\shouru.txt");//收入
String [] xiangZheng=txtStr10;
String [] countryList=txtStr10;
String [] txtStr1=new String[xiangZheng.length];
String [] txtStr5=new String[xiangZheng.length];
String [] txtStr8=new String[xiangZheng.length];
for(int l=0;l<txtStr1.length;l++){
if(l<txtTemp.length-1){
txtStr1[l]=txtTemp[l];
}else
txtStr1[l]="";
}
for(int l=0;l<txtStr5.length;l++){
if(l<txtTemp.length-1){
txtStr5[l]=txtTemp5[l];
}else
txtStr5[l]="";
}
for(int l=0;l<txtStr8.length;l++){
if(l<txtTemp.length-1){
txtStr8[l]=txtTemp8[l];
}else
txtStr8[l]="";
}
String propertyStr = "";
for (int i = 0; txtStr2 != null && i < txtStr2.length ; i++){
if ( cunName.indexOf(txtStr2[i]) != -1 && xiangName.indexOf(txtStr10[i]) != -1 ){
propertyStr=txtStr3[i]+"\t"+txtStr4[i]+"\t"+
txtStr5[i]+"\t"+txtStr6[i]+"\t"+txtStr7[i]+"\t"+txtStr8[i]+"\t"+
txtStr9[i]+"\t"+txtStr11[i]+"\t"+txtStr1[i]+"\r\n";
return propertyStr;
}
}
return "\r\n";
}
//----------------主程序------------------------
public void printAllCountryNumber (){
List list = getCunList(); //获取上次行政村数据
List xianList = getXianList(); //获取县的数据
List xiangList = getXiangList(); //获取乡镇数据;
List jzcList = getAllJzc(); //获取上次部接口文件中建制村信息
flagArray = new int[jzcList.getItemCount()];
for (int i = 0; flagArray != null && i < flagArray.length ; i++){
flagArray[i] = 0;
}
String filePath = "D:\\安徽省通达数据\\";
String lineStr = "";
String shiName = "";
String xianName = "";
String xiangZhengName = "";
String [] childStr = null;
String tempStr = "";
String propertyStr = "";
String contextStr = "";
String [] jwDu = new String[2];
for (int i = 0 ; list != null && i < list.getItemCount(); i++ ){
lineStr = (String)list.getItem(i);
childStr = lineStr.split("\t");
shiName = getShiName(childStr[1].substring(0,4),xianList);
xianName = getXianName(childStr[1].substring(0,6),xianList);
xiangZhengName = getXiangZhengName(childStr[1].substring(0,9),xiangList);
jwDu = getJzcJW(childStr[1],childStr[0],jzcList); //获取经纬度
tempStr = childStr[1]+"\t"+childStr[0]+"\t"+shiName+"\t"+xianName + "\t" + xiangZhengName + "\t"
+ jwDu[0] + "\t" + jwDu[1] + "\t";
filePath = "D:\\安徽省通达数据\\" + shiName + "\\"+ xianName + "\\array"; //array文件路径
propertyStr = getCountryInfo (filePath , xiangZhengName , childStr[0]); //获取行政村属性
contextStr += tempStr + propertyStr ;
System.out.println(tempStr + propertyStr);
}
FileOperate fileOperate = new FileOperate();
fileOperate.newFile("e:\\全省行政村编码表.txt",contextStr);
}
public static void main(String[] args) {
VillageNewNumber vnn=new VillageNewNumber();
vnn.printAllCountryNumber();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -