1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92:
package com.dcu.project.server; de invoer com.dcu.project.model.NMEAData; de invoer com.dcu.project.server. Tokenizer; openbare klassenManager { openbare NMEAData ParseData (de Gegevens van het Koord) { gpsData van NMEAData = nieuwe NMEAData (); Tokenizer tokenizer = nieuwe Tokenizer (Gegevens); Het teken van het koord = tokenizer.next (); terwijl (valse token.endsWith („$GPRMC“) ==) { teken = tokenizer.next (); } als (token.endsWith („$GPRMC“)) { // Tijd van moeilijke situatie Koord theTime = tokenizer.next (); Het Uur van het koord = theTime.substring (0, 2); De Notulen van het koord = theTime.substring (2, 4); Het koord detacheert = theTime.substring (4, 6); Koord newTime = (Hour+ „: “ + Notulen + ": „+Seconds+“ UTC“); // Breedte De Status van het koord = tokenizer.next (); Koord raw_lat = tokenizer.next (); Koord lat_deg = raw_lat.substring (0, 2); Koord lat_min1 = raw_lat.substring (2, 4); Koord lat_min2 = raw_lat.substring (5); Koord lat_min3 = „0.“ + lat_min1 + lat_min2; dubbele lat_dec = Float.parseFloat (lat_min3) /.6f; dubbele lat_val = Float.parseFloat (lat_deg) + lat_dec; // de richting van de Breedte Lat_direction van het koord = tokenizer.next (); als (lat_direction == „S“) { lat_val = (lat_val * -1); } // Lengte Koord raw_lon = tokenizer.next (); Koord lon_deg = raw_lon.substring (0, 3); Koord lon_min1 = raw_lon.substring (3, 5); Koord lon_min2 = raw_lon.substring (6); Koord lon_min3 = „0.“ + lon_min1 + lon_min2; dubbele lon_dec = Float.parseFloat (lon_min3) /.6f; dubbele lon_val = Float.parseFloat (lon_deg) + lon_dec; // de richting van de Lengte Lon_direction van het koord = tokenizer.next (); als (lon_direction == „W“) { lon_val = (lon_val * -1); } //Speed Koord speedknots = tokenizer.next (); dubbele speed_knots = Float.parseFloat (speedknots); dubbele speedmpers = (speed_knots * 0.51); //Course De cursus van het koord = tokenizer.next (); //Date Koord theDate = tokenizer.next (); De dag van het koord = theDate.substring (0, 2); De maand van het koord = theDate.substring (2, 4); Het jaar van het koord = theDate.substring (4, 6); Koord newDate = (day+ " - „+month+“ - „+year); gpsData.setTime (newTime); gpsData.setDate (newDate); (lat_val) gpsData.setLat; (lon_val) gpsData.setLongitude; gpsData.setSpeed (speedmpers); gpsData.setCourse (cursus); } terugkeer gpsData; } }
1: 2: 3:
als („S“ .equals (lat_direction)) { latVal *= -1; }