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

📄 readall.java

📁 基于Java的地图数据管理软件。使用MySQL数据库管理系统。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      number = number.substring(0,4);
    }
    for (int i = 0; i < sameXianLuduanVector.size(); i++) {
      if (((LdRow)sameXianLuduanVector.get(i)).getLxNumber().indexOf(number.toUpperCase()) != -1) {
        temp.add((LdRow)sameXianLuduanVector.get(i));
      }
    }
    return temp;
  }

  public void print(String xianName){
    if (xianName.equals("")) {
      for (int i = 0; i < allRow.size(); i++) {
        System.out.println( ( (LdRow) allRow.get(i)).getGeneralRow());
      }
    }else{
      Vector temp = this.selectLdRow(xianName);
      for (int i = 0; i < temp.size(); i++) {
        System.out.println( ( (LdRow) temp.get(i)).getGeneralRow());
      }
    }
  }




  //-------------------根据县名显示跨县路段数据
  public void printRowByXian(String shiName,String xianName,String inputPath,String outputPath){
	    String Number="";
	    String xian="";
	   if (xianName.equals("三山区")){
		   Number="340200";
	     }else {
	     Item item=new Item();
	     item.setXianName(xianName);
	     Number=item.getSix_6_XianNumber().substring(0,4)+"00";//获取行政编码

	     }
	    xian=""+inputPath.length();

	     Vector temp=new Vector();
	     Vector kuaXian=new Vector();
	     Vector kuaXian2=new Vector();
	     temp =selectRowByXian(xianName); //根据县名在年报表格中读取跨县路段数据
	     String rowStr="";//"路线代码\t路线简称\t起点桩号\t起点名称\t止点桩号\t止点名称\t里程\r\n";//标题行
	     FileOperate fileOperate = new FileOperate();
	     ToGPS gps=new ToGPS();
	 	 OpenDirectory od=new OpenDirectory();  //读取所有GPS数据
	 	 od.setGradeStr("县道|");
	 	 File[] allFiles=od.getOpenFile(inputPath);//读取所有GPS文件
	 	 String lxNumber="";

	 	 File[]  gpsFiles=od.getOpenFile(inputPath+"\\"+xianName);

	 	  for(int j=0;j<gpsFiles.length;j++){
		       	File fileName=gpsFiles[j];
		       	String gpsNum=fileName.getName().substring(0,4)+Number;
		       	 for(int p=0;p<temp.size();p++){
		       		String lxNum=((LdRow)temp.get(p)).getLxNumber();
		       		if (gpsNum.equals(lxNum)){
		   		        kuaXian2.add((LdRow)temp.get(p));
		       		}
		       	 }
		       }

	       	File fileName = null;
	       	String tempStr = "";
	       	String lxNum = "";
	        String rowGPSStr = "";//根据路线编号获取GPS中数据
		    String tempRowStr = "";
		    String tempPath="";
	     for (int i = 0; i < kuaXian2.size(); i++) {
	       lxNumber=((LdRow)kuaXian2.get(i)).getLxNumber();
	       int count = 1;
	       tempRowStr = "";
	       for(int j=0;j<allFiles.length;j++){
		       	fileName=allFiles[j];
		       	tempStr="";
		       	lxNum=((LdRow)kuaXian2.get(i)).getLxNumber();
		       	tempPath=fileName.getParent().replace('\\',',');
		        String[] paths=tempPath.split(",");
		        int lenInt=paths.length-3;
		       	String quXian=paths[lenInt];//fileName.getParent().substring(20,23);  //区县名
		       	String [] zh=zhuangHao(lxNum,shiName,quXian);
		        rowGPSStr=gps.ToGPS(fileName.getParent(),fileName.getName(),lxNum,zh,xianName);//根据路线编号获取GPS中数据
		       if (!rowGPSStr.equals("1"))
		        {
		        	tempRowStr += rowGPSStr+"\r\n";
		            count++;
		        }
		      }
	         if(count>2)
	        	 rowStr += tempRowStr;
	         }
	     System.out.println("row="+ rowStr);
	     fileOperate.newFile(outputPath+"\\"+xianName+".txt",rowStr);//输出文件
	    }
  //-------------------根据县名显示跨县路段数据和所有县道及乡道数据
  public void printAllRowByXian(String shiName,String xianName,String inputPath,String outputPath){
  	     System.err.println("正在读取数据,请稍候...");
	      String xianNumber="";
		  String xian="";
		  String Number="";
	      Item item=new Item();
		  if (xianName.equals("三山区")){
		   Number="340200";
		   xianNumber="340222";
	     }else {
	     item.setXianName(xianName);
	     xianNumber=item.getSix_6_XianNumber();
	     Number=xianNumber.substring(0,4)+"00";//获取行政编码
	     }
	  	  xian=""+inputPath.length();




	  //---------------------下面的程序段是列出该县(区)的所有跨县区线路----------
	  	// Vector tempAll=getRowByXian(shiName,xianName);
	     Vector temp=new Vector();
	     Vector kuaXian=new Vector();
	     Vector kuaXian2=new Vector();
         temp =selectRowByXian(xianName); //根据县名在年报表格中读取跨县路段数据
	     String rowStr="";//"路线代码\t路线简称\t起点桩号\t起点名称\t止点桩号\t止点名称\t里程\r\n";//标题行
	     FileOperate fileOperate = new FileOperate();
	     ToGPS gps=new ToGPS();
	    OpenDirectory od=new OpenDirectory();  //读取所有GPS数据
	 	 od.setGradeStr("县道|");
	 	 File[] allFiles=od.getOpenFile(inputPath);//读取所有GPS文件
	 	 String lxNumber="";

	 	 File[]  gpsFiles=od.getOpenFile(inputPath+"\\"+xianName);

	 	  for(int j=0;gpsFiles != null && j<gpsFiles.length;j++){    //按县获取年报信息
		       	File fileName=gpsFiles[j];
		       	String gpsNum=fileName.getName().substring(0,4)+Number;
		       	 for(int p=0;p<temp.size();p++){
		       		String lxNum=((LdRow)temp.get(p)).getLxNumber();
		       		if (gpsNum.equals(lxNum)){
		   		        kuaXian2.add((LdRow)temp.get(p));
		       		}
		       	 }
		       }

	 	    ArrayList lxnumberList=new ArrayList();   //保存跨县区线路的线路编号
	 	    String tempNumber="";
	       	File fileName = null;
	       	String tempStr = "";
	       	String lxNum = "";
	        String rowGPSStr = "";//根据路线编号获取GPS中数据
		    String tempRowStr = "";
		    String tempPath="";

    	 for (int i = 0; i < kuaXian2.size(); i++) {   //按县查找跨县线路并找出年报中的起止点桩号信息
	       lxNumber=((LdRow)kuaXian2.get(i)).getLxNumber();
	       int count = 1;
	       tempRowStr = "";
	       for(int j=0;allFiles != null && j<allFiles.length;j++){
	    	    tempNumber="";
		       	fileName=allFiles[j];
		       	tempStr="";
		       	lxNum=lxNumber;
		       	tempPath=fileName.getParent().replace('\\',',');
		        String[] paths=tempPath.split(",");
		        int lenInt=paths.length-3;
		       	String quXian=paths[lenInt]; //区县名
		       	String [] zh=zhuangHao(lxNum,shiName,quXian); //按线路编号得到起止点桩号信息
		        rowGPSStr=gps.ToGPS(fileName.getParent(),fileName.getName(),lxNum,zh,xianName);//根据路线编号获取GPS中数据
		       if (!rowGPSStr.equals("1"))
		        {
		        	tempRowStr += rowGPSStr+"\r\n";
		        	tempNumber=lxNum;
		        	// lxnumberList.add(tempNumber);
		            count++;
		        }
		      }
	         if(count>2){
	        	 lxnumberList.add(tempNumber);
	        	 rowStr += tempRowStr;
	         }

	         }
	   //---------------------下面的程序段是列出该县(区)的所有县、乡道----------
		 String allLxStr="";
	     OpenDirectory openFile=new OpenDirectory();
		 File[]  xianFile=openFile.getOpenFile(inputPath+"\\"+xianName);
		 openFile.setGradeStr("县道|乡道|");
		 int n=0;
			  for(int j=0;xianFile!=null && j<xianFile.length;j++){
			        fileName=xianFile[j];
			    	tempPath=fileName.getParent().replace('\\',',');
			        String[] paths=tempPath.split(",");
			        int lenInt=paths.length-1;
			    String xNumber=paths[lenInt];//判断是否为乡、县
				 String bianHao="";
				 if (xNumber.equals("乡"))
				 bianHao=fileName.getName().substring(0,4)+xianNumber;
				 else
			 	 bianHao=fileName.getName().substring(0,4)+Number;
		         n=0;
		       	  for(int l=0;l<lxnumberList.size();l++){
		       		String lx=(String)lxnumberList.get(l);
		       	      if (lx.equals(bianHao)) n++;
		       	  }
		       	  if (n>0) continue;
		       	String [] zh=zhuangHao(bianHao,shiName,xianName);
		        rowGPSStr=gps.ToGPS1(fileName.getParent(),fileName.getName(),bianHao,zh,xianName);//根据路线编号获取GPS中数据

		        if (!rowGPSStr.equals("1"))
		        {
		        	 allLxStr+=rowGPSStr+"\r\n";
		        }

		 }

	    rowStr=rowStr+allLxStr;

		System.out.println(rowStr);
	    fileOperate.newFile(outputPath+"\\"+xianName+"_跨县信息.txt",rowStr);//输出文件
	    }


  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) {
	  ReadAll readall = new ReadAll();
      readall.read();
    /*  if(args.length <4)
  	  System.out.println("缺少参数!");
    else
   	  readall.printAllRowByXian(args[0],args[1],args[2],args[3]);
      */

     readall.printAllRowByXian("蚌埠市","禹会区","D:\\安徽省通达数据\\蚌埠市","D:\\异型路整理好\\蚌埠市");

  }
}

⌨️ 快捷键说明

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