1

度単位の緯度と経度の値を2倍に変換しようとしています。値はこのようなものです

 "latitude":"25°21 N",
        "longitude":"55°23 E"

これをアンドロイドに記録しようとすると、このようになります。 ここに画像の説明を入力

この"A^"特別な文字は何ですか。なんと来た。また、ログを保存しようとすると、次のようになりました 25°21 N

緯度と経度の度数を2倍に変換する方法は?

ありがとう

4

1 に答える 1

5

現在の例では、入力を解析する必要があります。解析されたら、その式に割り当てます。

入力の解析

Map<String,String> yourMap; //imagine is your input 
                            //"latitude":"25°21 N",
                            //"longitude":"55°23 E"

String latitude = yourMap.get("latitude");
String hour = latitude.split("º")[0];
String minute = latitude.split("º")[1].split(" ")[0];

// This is a very ugly way to parse it, better do with regular expressions, 
// but I'm not an expert on them and cannot figure them.


//Parse result
String hour = "25";
String minute = "21";
String second = "0";

//Formula
double result = Integer.intValue(hour) + 
                Integer.intValue(minute) / 60 + 
                Integer.intValue(second) / 3600;
于 2013-10-17T10:00:31.903 に答える