Hallo,
ich soll ein Programm schreiben das eine Datenzeile bekommt und ich es dann "spalte" in andere Variablen.
Falls etwas "besser" geht bitte mitteilen.
Das wäre der Code: Die Zeilen bei denen ich Probleme hab markiere ich mit // ! ! !
ich soll ein Programm schreiben das eine Datenzeile bekommt und ich es dann "spalte" in andere Variablen.
Falls etwas "besser" geht bitte mitteilen.
Das wäre der Code: Die Zeilen bei denen ich Probleme hab markiere ich mit // ! ! !
Java:
private String rawData;
private LocalTime time;
private float latitude; //Breitengrad
private char directionLati;
private float longitude; //Laengengrad
private char directionLong;
private int qualityOfGPS; // Qualitaet von GPS
private int sateliteCount; // Anzahl der Sateliten
private float horizonDevitation; //Horizontale Abweichung
private int highOverSeaLevel; // Hoehe der Antenne über Meeresspiegel
private char heightUnit; // Einheit der Hoehe ueber dem Meerespiegel
private LocalDate date;
private String checkSum; //Pruefsumme
public GGA(String rawData){
this.rawData = rawData;
}
public void readData(){
if(rawData.charAt(0) == '$'){
String [] data = rawData.split(",");
//$GPGGA,000148.000,0000.0000,N,00000.0000,E,0,00,99.9,-17.0,M,17.0,M,,0000*74
time = LocalTime.parse(data[1]); // ! ! !
System.out.println(time);
latitude = Float.parseFloat(data[2]);
directionLati = data[3].charAt(0);
longitude = Float.parseFloat(data[4]);
directionLong = data[5].charAt(0);
qualityOfGPS = Integer.parseInt(data[6]);
sateliteCount = Integer.parseInt(data[7]);
horizonDevitation = Float.parseFloat(data[8]);
//highOverSeaLevel = Integer.parseInt(data[9]);
heightUnit = data[10].charAt(0);
System.out.println(data[11]);
System.out.println(data[12]);
date = LocalDate.parse(data[13]);
String splitLastDataString = data[14]; // ! ! !
String [] splitLastData = splitLastDataString.split("*"); // ! ! !
checkSum = splitLastData[1];
}else{
System.out.println("Invalid data line!");
}
}
Zuletzt bearbeitet von einem Moderator: