📄 tofile.java
字号:
package net.aetherial.gis.our;
import net.aetherial.gis.dataType.filter.WptTrkFilter;
import javax.swing.*;
import java.io.File;
import net.aetherial.gis.excel.ExcelFilter;
import net.aetherial.gis.surface.ItemValue;
import org.w3c.dom.Node;
import net.aetherial.gis.dataType.ElementToWpt;
import net.aetherial.gis.surface.CreateFile;
import net.aetherial.gis.dataType.ElementToTrk;
import org.w3c.dom.NodeList;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2004</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class ToFile {
private File wpt = null,trk = null;
private static String path = "D:\\GIS\\GPS测量数据\\";
private String fileName = "fileName";
private String errorString ="";
public ToFile() {
this.fileName = (new File(ItemValue.fileChoosePath)).getName();
}
public void saveWptTrk(JFrame jf){
JFileChooser fileDialog = new JFileChooser();
//WptTrkFilter filter = new WptTrkFilter();
//fileDialog.setFileFilter(filter);
fileDialog.setCurrentDirectory(new File(path));
fileDialog.setSelectedFile(new File(path+"\\"+this.fileName));
int result = fileDialog.showSaveDialog(jf);
if (result == JFileChooser.APPROVE_OPTION) {
File f = fileDialog.getSelectedFile();
//this.path = f.getAbsolutePath();
String path = f.getAbsolutePath();
String rex = path.substring(path.length()-4,path.length());
if(rex.startsWith(".")){
path = path.substring(0,path.length()-4);
}
this.path = new File(path).getParent();
wpt = new File(path+".wpt");
trk = new File(path+".trk");
CreateFile cfWpt = new CreateFile(wpt);
cfWpt.setEncode("GB2312");
cfWpt.memoryToFile(this.getWptString());
CreateFile cfTrk = new CreateFile(trk);
cfTrk.setEncode("GB2312");
cfTrk.memoryToFile(this.getTrkString());
JOptionPane.showMessageDialog(jf,"File saved OK!\n"+wpt.getName()+"\n"+trk.getName());
}
}
public void saveWptTrk(File f){
String path = f.getAbsolutePath();
String rex = path.substring(path.length()-4,path.length());
if(rex.startsWith(".")){
path = path.substring(0,path.length()-4);
}
wpt = new File(path+".wpt");
trk = new File(path+".trk");
CreateFile cfWpt = new CreateFile(wpt);
cfWpt.setEncode("GB2312");
cfWpt.memoryToFile(this.getWptString());
CreateFile cfTrk = new CreateFile(trk);
cfTrk.setEncode("GB2312");
cfTrk.memoryToFile(this.getTrkString());
System.out.println("File saved OK!\n"+wpt.getName()+"\n"+trk.getName());
}
private String getWptString(){
ElementToWpt etw = new ElementToWpt();
etw.setHead();
int[] pos = ItemValue.getPosition("waypoint");
for(int i = 0;i<pos.length;i++){
Node node = ItemValue.getWaypointByWaypointPos(pos[i]);
etw.appendWpt(ItemValue.getWaypointName(node),ItemValue.getWaypointY(node),ItemValue.getWaypointX(node),ItemValue.getWaypointZ(node),"");
}
return etw.getResult();
}
private String getTrkString(){
ElementToTrk ett = new ElementToTrk();
ett.setHead();
int[] pos = ItemValue.getPosition("track");
for (int i = 0; i < pos.length; i++) {
Node node = ItemValue.getTracksByPos(i);
NodeList nl = ItemValue.getTracksPoint(node);
if(nl.getLength()>0){
ett.appendTrk(ItemValue.getTracksName(node), nl.getLength());
for (int j = 0; j < nl.getLength(); j++) {
ett.appendPoint(ItemValue.getTracksPointY(nl.item(j)),
ItemValue.getTracksPointX(nl.item(j)),
ItemValue.getTracksPointZ(nl.item(j)),
ItemValue.getTracksPointTime(nl.item(j)));
}
}else{
this.addErrorString("track point = " + nl.getLength() + " At " + ItemValue.getTracksName(node));
}
}
return ett.getResult();
}
public void addErrorString(String error){
this.errorString =this.errorString + error + "\r\n";
}
public String getErrorString(){
return this.errorString;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -