读取观测值文件的观测时间,直接上码
package com.xxx.utils;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class ReadObsData {
/**
* 从观测值文件获取开始观测时间
* */
public static String GetObsTimeFormRinex(String path) {
String obsTime = "";
FileReader fr = null;
BufferedReader br = null;
/**观测类型*/
List<String> type_obs = new ArrayList<>();
try {
fr = new FileReader(path);
br = new BufferedReader(fr);
String str = "";
/*************************读取头文件数据**********************/
while ((str = br.readLine()) != null) {
switch (str.substring(60).trim()) {
/**获取观测时间*/
case "TIME OF FIRST OBS":
String obsTimeStr = str.substring(0, 60).trim();
String[] obsTimeArrays = obsTimeStr.split(" ");
int j = 0;
for (int i = 0; i < obsTimeArrays.length; i++) {
if (!obsTimeArrays[i].equals("")) {
if(j == 2) {
obsTime = obsTime + obsTimeArrays[i] ;
break;
} else {
obsTime = obsTime + obsTimeArrays[i] + "-";
}
j++;
}
}
break;
}
if(obsTime != "") {
break;
}
}
} catch(IOException e){
e.printStackTrace();
}finally{
//关闭文件输入流
try {
if (br != null) {
br.close();
}
if (fr != null) {
fr.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return obsTime;
}
public static void main(String[] args) {
GetObsTimeFormRinex("E://report3//TTTT00CHN_R_20210911500_01H_01S_MO.rnx");
}
}