2017-04-08 3 views
0

Ich habe immer aktuelle Position (Längen- und Breitengrade) mit diesem Code:Wie teile ich Breiten- und Längengrad in separate Strings auf?

LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude()); 
Log.d("My_Loc",latLng.toString()); 

Und das Ergebnis ist: Output: My_Loc: lat/lng: (12.9153443,80.146238)

ich diese Ausgabe geteilt werden soll und speichern wie:

longi=12.9153443 

lati=80.1446238 

Danke.

+0

ist das "(" und ")" immer in der Zeichenkette enthalten? –

+0

Verwenden Sie einfach Split (",") und dann erhalten Sie Array von zwei Strings dann speichern Sie sie wie Sie möchten –

+2

Warum verwenden Sie nicht einfach 'Log.d (" long "," = "+ location.getLongitude ()); Log.d ("lati", "=" + location.getLatitude()); ' –

Antwort

0

Da Sie die LatLng Klasse der Google-API verwenden, können Sie die latitude & longitude öffentlichen Bereichen nutzen.

LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude()); 
double longitude = latLng.longitude; 
double latitude = latLng.latitude; 

Alternativ , wenn die Daten in diesem Format die ganze Zeit abgerufen werden:

(12.9153443,80.146238)

dann können Sie diese Lösung verwenden:

String data = "(12.9153443,80.146238)"; // assume this is the data 
String [] tempArray = data.substring(data.indexOf("(")+1, data.lastIndexOf(")")).split(","); 
double longitude = Double.parseDouble(tempArray[0]); 
double latitude = Double.parseDouble(tempArray[1]); 

obwohl ich vorschlagen würde, mit dem ersten solu gehen tion.

Verwandte Themen