GpsData gpsData = new GpsData()
try {
String encoding="GBK"
File file=new File(gprmcStr)
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding)//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read)
String lineTxt = null
while((lineTxt = bufferedReader.readLine()) != null){
int pos = lineTxt.indexOf("$GPRMC")
if(pos!=-1){
for (int i = 0i < 11i++){
String value = lineTxt.substring(0,lineTxt.indexOf(","))
lineTxt = lineTxt. substring(lineTxt.indexOf(",") + 1)
switch (i){
case 0:gpsData. setType(value) break
case 1:gpsData. setTime(value) break
case 2:gpsData. setStatus(value) break
case 3:gpsData. setLat(value) break
case 4:gpsData. setLatdir(value) break
case 5:gpsData. setLon(value) break
case 6:gpsData. setLondir(value) break
case 7:gpsData. setSpeedKN(value) break
case 8:gpsData. setTrackTure(value) break
case 9:gpsData. setDate(value) break
case 10:gpsData. setMagneticDirection(value) break
}
}
System.out.println("Type="+gpsData.getType()
+", Time="+gpsData.getTime()
+", Status="+gpsData.getStatus()
+", Lat="+gpsData.getLat()
+", Latdir="+gpsData.getLatdir()
+", Lon="+gpsData.getLon()
+", setLondir="+gpsData.getLondir()
+", SpeedKN="+gpsData.getSpeedKN()
+", TrackTure="+gpsData.getTrackTure()
+", Date="+gpsData.getDate()
+", MagneticDirec="+gpsData.getMagneticDirection())
}
}
read.close()
}else{
System.out.println("找不到指定的文件")
}
} catch (Exception e) {
System.out.println("读取文件内容出错")
e.printStackTrace()
}
return gpsData
}
File file = new File("文件地址")Scanner scanner = new Scanner(file)
String lineContent = null
while(scanner.hasNextLine()){//如果有下一行
lineContent = scanner.nextLine()//读取下一行内容
}
scanner.close()//关闭Scanner