importgeotools.InputPoint;importgeotools.PointRule;import java.io.*;importjava.util.ArrayList;/*** 写一个类,用来把文件中的轨迹,每条轨迹都放在一个文件中*/
public classOneToMore {public staticOutputStreamWriter out;public static ArrayList track=new ArrayList<>();public static void oneToMore() throwsIOException {/*** 每条轨迹得分别new一个file对象*/
/*先把数据读进来*/InputPoint inputPoint=newInputPoint();
ArrayList p=inputPoint.Read();/*** 先循环并按轨迹拆分
* 声明一个用来存储单条轨迹的集合
* 用布尔判断,声明时候开始读入什么时候结束*/
boolean start=false;int k=0;for (int i=0;i
track.add(p.get(i));
}if(p.get(i).getIsON()==1){
track.add(p.get(i));
start=true;
}if (start&&p.get(i).getIsON()==0){
track.add(p.get(i));
start=false;
String filename="E://桌面//1118原数据//";
StringBuilder s=newStringBuilder(filename);
s.append(k);
s.append(".txt");
out= newOutputStreamWriter(new FileOutputStream(new File(s.toString()),true));
BufferedWriter wr= newBufferedWriter(out);for (int j=0;j
wr.write(String.valueOf(track.get(j).getCarnum()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getIsON()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getDate()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getLat()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getLon()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getSpeed()));
wr.write("\t");
wr.write(String.valueOf(track.get(j).getDirect()));
wr.write("\n");
wr.flush();
}catch(IOException e) {
e.printStackTrace();
}
}
wr.close();
track.clear();
k++;
}
}
}/*** 程序入口测试*/
public static void main(String[] args) throwsIOException {
OneToMore.oneToMore();
}
}