); ? ? ? ? ? ? ? ? ?Vertex++; ? ? ? ? ? ? ? ? ?System.out.println("jilu:" + Vertex); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? // 关闭写文件 ? ? ? ? ? ? ? ? read.close(); ? ? ? ? ? ? ? ? bufferedReader.close(); ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? System.out.println("找不到指定的文件"); ? ? ? } ? ? ? ? ? ? ? ? } catch (Exception e) { ? ? ? ? System.out.println("ReadToWrite……读取文件内容出错"); ? ? ? ? e.printStackTrace(); ? ? ?} ? System.out.println("ReadToWrite……Devide is over!!!"); ?} ? ?/* 功能:把各个站点的路径数和经过的路径统计出来,格式如下;仅仅是为了看齐效果:站点名称 ? * @param: destinationPath2? 写文件件的路径名称 ? * @调用其他函数: null ? * @return: null ? * 结果示例: ? * ========================== ? Source:二纬路 ? Target:津湾广场 ? Distance:6 ? Path:二纬路-->海光寺-->鞍山道-->营口道-->营口道-->和平路-->津湾广场 ? ========================== ? */ ?//? ?public void writeText2(String destinationPath2){ ? try { ? ?BufferedWriter bufferWriter = new BufferedWriter(new FileWriter(destinationPath2)); ? ?String newLine = ""; ? ?int p,q,m; ? ? ? for(p=1;p<=Vertex;p++) ? ? ? { ? ? ? ? ? for(q=p+1;q<=Vertex;q++) ? ? ? ? ? { ? ? ? ? ? ?newLine = "\n==========================\nSource:" + mapIDName.get(stationID.get(p)) + "\nTarget:" + mapIDName.get(stationID.get(q)) + "\nDistance:" + Dist[p][q] + "\nPath:" + mapIDName.get(stationID.get(p)); ? ? ? ? ? ? ? k=2; ? ? ? ? ? ? ? Root(p,q); ? ? ? ? ? ? ? for(m=2;m<=k-1;m++){ ? ? ? ? ? ? ? ?newLine = newLine + "-->" +? mapIDName.get(stationID.get(Line[m])); ? ? ? ? ? ? ? } ? ? ? ? ? ? ? newLine += "\n==========================\n"; ? ? ? ? ? ? ? bufferWriter.write(newLine); ? ? ? ? ? } ? ? ? } ? ? ? bufferWriter.close(); ? } catch (Exception e) { ? ? ? ? System.out.println("MergeMinDistortByDay_Zheng……读取文件内容出错"); ? ? ? ? e.printStackTrace(); ? ? } ?} ?/* 功能:把各个站点的路径数和经过的路径统计出来,格式如下;仅仅是站点的编号,这是后面要用到的文件格式。 ? * @param: destinationPath2? 写文件件的路径名称 ? * @调用其他函数:private void Root(int p,int q) 返回路径所经过的站点 ? * @return: null ? */ ?// 输出最短路径,仅仅编号之间的对应关系? 2314,533 --> 2314,533,6,2314,2313,529,530,531,532,533 ?public void writeText(String destinationPath){ ? try { ? ?BufferedWriter bufferWriter = new BufferedWriter(new FileWriter(destinationPath)); ? ?String newLine = ""; ? ?int p,q,m; ? ? ? for(p=1;p<=Vertex;p++) ? ? ? { ? ? ? ? ? for(q=1;q<=Vertex;q++) ? ? ? ? ? { ? ? ? ? ? ?newLine = "" + stationID.get(p) + "," + stationID.get(q) + "," + Dist[p][q] + "," + stationID.get(p); ? ? ? ? ? ? ? k=2; ? ? ? ? ? ? ? Root(p,q); ? ? ? ? ? ? ? for(m=2;m<=k-1;m++){ ? ? ? ? ? ? ? ?newLine = newLine + "," + stationID.get(Line[m]); ? ? ? ? ? ? ? } ? ? ? ? ? ? ? newLine += "\n"; ? ? ? ? ? ? ? bufferWriter.write(newLine); ? ? ? ? ? } ? ? ? } ? ? ? bufferWriter.close(); ? } catch (Exception e) { ? ? ? ? System.out.println("MergeMinDistortByDay_Zheng……读取文件内容出错"); ? ? ? ? e.printStackTrace(); ? ? } ?} ?/* 功能:初始化各个站点间的初始距离,即相邻的为1,不相邻的为0,转乘车站坐特殊处理,且转乘车站之间认为路径是1 ? * @param: null ? * @调用其他函数: null ? * @return: null ? */ ?// init ?private void init(){ ? /*|| (stationID.get(p)==280 && 533-stationID.get(q) == 1) ? || (stationID.get(p)==280 && 791-stationID.get(q) == 1) || (stationID.get(p)==533 && 280-stationID.get(q) == 1) ? || (stationID.get(p)==533 && 791-stationID.get(q) == 1) || (stationID.get(p)==791 && 280-stationID.get(q) == 1) ? || (stationID.get(p)==791 && 533-stationID.get(q) == 1) ? || (stationID.get(q)==280 && 533-stationID.get(p) == 1) ? || (stationID.get(q)==280 && 791-stationID.get(p) == -1) || (stationID.get(q)==533 && 280-stationID.get(p) == -1) ? || (stationID.get(q)==533 && 791-stationID.get(p) == -1) || (stationID.get(q)==791 && 280-stationID.get(p) == -1) ? || (stationID.get(q)==791 && 533-stationID.get(p) == -1)*/ ? // 初始化 ? for(int p=1;p<=Vertex;p++){ ? ?for(int q=1;q<=Vertex;q++){// 280 533 791 tj ? ? if(stationID.get(p)-stationID.get(q)==-1 || st |