📄 readall.java
字号:
package net.aetherial.gis.output.toTable.zhurun;
import net.aetherial.gis.our.duibi.readXLS.ReadFile;
import net.aetherial.gis.surface.CreateFile;
import java.io.File;
import java.util.*;
import org.w3c.dom.Node;
import net.aetherial.gis.output.FileOperate;
import net.aetherial.gis.our.*;
import net.aetherial.gis.output.toLd.*;
import net.aetherial.gis.output.toTable.*;
import net.aetherial.gis.jiaotongbu.output.publicuse.*;
import net.aetherial.gis.output.toTable.readglj.LdRow;
import net.aetherial.gis.output.toTable.readglj.ReadRow;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2004</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class ReadAll extends ReadFile{
public static Vector allRow = new Vector();
private static String userPath="C:\\Documents and Settings\\All Users\\Documents\\file\\跨县线路分县运行脚本\\classfile\\";
public ReadAll() {
this.setSheet("file\\glj\\luduanxinxi.xls","t");
this.row = this.baseRow = 0;
}
public void read(){
// System.out.print(" 正在读取公路局路段信息表:");
while (true) {
if (this.row >= 11274) {
break;
}
// if (this.row % 1000 == 1) {
// System.out.print(this.row + ", ");
// }
this.moveNext();
if (!this.isEmptyrow()) {
allRow.add((new ReadRow(this.rowData)).getLdRow());
}else{
break;
}
}
// System.out.println("");
}
public static Vector selectLdRow(String xianName){
Vector temp = new Vector();
for (int i = 0; i < allRow.size(); i++) {
if (((LdRow)allRow.get(i)).getDanWeiName().indexOf(xianName) != -1) {
temp.add((LdRow)allRow.get(i));
}
}
return temp;
}
//----------获取所有跨县路段数据
public static Vector selectAllRow()
{
Vector temp = new Vector();
Vector AllRow2 =new Vector();
String lxNumber=""; //路线编号
for (int i = 0; i < allRow.size(); i++) {
lxNumber=((LdRow)allRow.get(i)).getLxNumber();
if (((LdRow)allRow.get(i)).getStartValue().equals("0")) {
continue;
}
int n=selectRowNum(lxNumber).size(); //相同路线编号的总记录数
int isZero=0; //判断起点数据是否为0
AllRow2=selectRowNum(lxNumber);
for (int j=0;j<AllRow2.size();j++){
if (((LdRow)AllRow2.get(j)).getStartValue().equals("0")) {
isZero=1;
break;
}else continue;
}
if (isZero==0 ) //当起点不为0时,则为跨县路段
temp.add((LdRow)allRow.get(i));
}
return temp;
}
//----------根据县名获取跨县路段数据
public static Vector selectRowByXian(String xianName)
{ Vector temp = new Vector();
Vector AllRow2 = new Vector();
String lxNumber= ""; //路线编号
for (int i = 0; i < allRow.size(); i++) {
lxNumber=((LdRow)allRow.get(i)).getLxNumber();
if (((LdRow)allRow.get(i)).getStartValue().equals("0") ) {
continue;
}
int n=selectRowNum(lxNumber).size(); //相同路线编号的总记录数
int isZero=0; //判断起点数据是否为0
int isHave=0;
AllRow2=selectRowNum(lxNumber);
for (int j=0;j<AllRow2.size();j++){
/* if (((LdRow)AllRow2.get(j)).getStartValue().equals("0")) {
isZero=1;
break;
}else */
if (temp!=null){
for(int k=0;k<temp.size();k++){
String number=((LdRow)temp.get(k)).getLxNumber();
if (number.equals(lxNumber)){
isHave=1;
}
}
}else continue;
}
if (isHave==0 && ((LdRow)allRow.get(i)).getXinZhengName().indexOf(xianName) != -1) //当起点不为0时,则为跨县路段
temp.add((LdRow)allRow.get(i));
}
return temp;
}
//----------根据县名获取所有数据
public static Vector getRowByXian(String shiName,String xianName)
{ Vector temp = new Vector();
Vector AllRow2 = new Vector();
String lxNumber= ""; //路线编号
String xianName1=xianName;
String xian=xianName.substring(2,3);
if (xian.equals("区")){
xian=shiName;
xianName1=xian;
}
for (int i = 0; i < allRow.size(); i++) {
lxNumber=((LdRow)allRow.get(i)).getLxNumber();
int n=selectRowNum(lxNumber).size(); //相同路线编号的总记录数
int isZero=0; //判断起点数据是否为0
int isHave=0;
AllRow2=selectRowNum(lxNumber);
for (int j=0;j<AllRow2.size();j++){
/* if (((LdRow)AllRow2.get(j)).getStartValue().equals("0")) {
isZero=1;
break;
}else */
if (temp!=null){
for(int k=0;k<temp.size();k++){
String number=((LdRow)temp.get(k)).getLxNumber();
if (number.equals(lxNumber)){
isHave=1;
}
}
}else continue;
}
if (isHave==0 && ((LdRow)allRow.get(i)).getDanWeiName().indexOf(xianName1) != -1) //当起点不为0时,则为跨县路段
{ temp.add((LdRow)allRow.get(i));
String number=((LdRow)allRow.get(i)).getLxNumber();
System.err.println("================Number====="+number);
}
}
return temp;
}
//-------------查找跨入县区的列表
public static Vector kuaXianRow(String xianName,String lxNumber)
{
Vector temp = new Vector();
String lxNum="";
for (int i = 0; i < allRow.size(); i++) {
lxNum=((LdRow)allRow.get(i)).getLxNumber();
if (lxNum.equals(lxNumber)) {
temp.add((LdRow)allRow.get(i));
}
}
return temp;
}
//----------统计同一路线编号的记录(add by zhurun)
public static Vector selectRowNum(String LxNumber)
{ Vector temp = new Vector();
for (int i = 0; i < allRow.size(); i++) {
if (((LdRow)allRow.get(i)).getLxNumber().indexOf(LxNumber) != -1) {
temp.add((LdRow)allRow.get(i));
}
}
return temp;
}
//----------获取起点、止点桩号
public static String [] zhuangHao(String LxNumber,String shiName,String xianName)
{
/* String xianName1=xianName;
String xian="";
if (xianName.length()==2) xian=xianName.substring(1,2);
if (xianName.length()==3) xian=xianName.substring(2,3);
if (xianName.length()==4) xian=xianName.substring(3,4);
if (xianName.length()==6) xian=xianName.substring(5,6);
if (xian.equals("区")){
xian=shiName;
xianName1=xian;
}
*/
String [] zh = new String[2];
zh[0]="0";
zh[1]="0";
Vector temp = new Vector();
for (int i = 0; i < allRow.size(); i++) {
if (((LdRow)allRow.get(i)).getLxNumber().indexOf(LxNumber) != -1 &&
((LdRow)allRow.get(i)).getXinZhengName().indexOf(xianName) != -1){
temp.add((LdRow)allRow.get(i));
}
}
for (int j=0;j<temp.size();j++){
if (j==0)
{
if (((LdRow)temp.get(j)).getStartValue()!=null)
zh[0]=((LdRow)temp.get(j)).getStartValue();
}
if (j==temp.size()-1)
{
if (((LdRow)temp.get(j)).getZhiDianValue()!=null)
zh[1]=((LdRow)temp.get(j)).getZhiDianValue();
}
}
return zh;
}
//
public static Vector selectedSameNumberLdRow(Vector sameXianLuduanVector,String number){
Vector temp = new Vector();
if (number.length() > 4) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -