将字符串转换为核心位置

Posted

技术标签:

【中文标题】将字符串转换为核心位置【英文标题】:convert string to core location 【发布时间】:2014-03-20 14:31:47 【问题描述】:

我将纬度和经度值作为字符串并希望将其转换为核心定位。我的主要意图是计算用户当前位置(由设备返回)与服务器返回的位置之间的距离。

calculate distance using lat and long..这篇文章帮助我找到了两个位置之间的距离。

以下哪个是最好的方法?

    我是否应该并计算距离 或 我是否应该将设备位置转换为字符串并计算距离。

【问题讨论】:

你怎么可能通过转换为字符串来计算距离? @Merlevede 我没有。但这里是link 说明拒绝投票的原因会有很大帮助。另外请记住,不是每个人都是专家,可能会有一些基本问题,原因可能是用户无法正确搜索(使用正确的关键字)以获得结果。 【参考方案1】:

像这样创建和对象:

CLLocation *locA = [[CLLocation alloc] initWithLatitude:lat1 longitude:long1];

lat1 / long2 的类型为CLLocationDegrees,它是一个双精度类型定义,表示以度为单位的点。

将您的 lat / long 转换为双精度并传递它们,如下所示:

CLLocation *locA = [[CLLocation alloc] initWithLatitude:[@"" doubleValue] longitude:[@"" doubleValue] ];

上面的代码在你链接的例子中,你可以很容易地用谷歌搜索这个对象,它会把你带到在线文档。

编辑:

根据 Volker 的建议,如果您从服务器获取数字,则可能存在本地化问题,其中一些本地使用小数:46.000,而其他使用逗号 46,000

这样的东西会更好:

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
NSNumber *temp = [formatter numberFromString:@""];
[temp doubleValue];

【讨论】:

注意字符串是否包含本地化数字,例如使用“,”作为小数分隔符。最好使用数字格式化程序来获取双精度值。 @Volker 完全正确,我完全忘记了。编辑后的答案,我相信这是正确的代码吗? @SimonMcLoughlin 和 Volker 非常感谢您。这对我有帮助。

以上是关于将字符串转换为核心位置的主要内容,如果未能解决你的问题,请参考以下文章

请编写一个程序将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

是否有 perl 5.005 核心模块可以将纪元秒数转换为日期时间字符串?

将字符串转换为 int 和 char

将二进制文件从一个位置转换为字符串到另一个位置

将字符串ss中所有下标为奇数位置上的字母转换为大写

如何将afnetworking json字典转换为字符串,然后在IOS中将字符串转换为字典?