Bug记录:微博的Java SDK返回经纬度错误

现象:美国的坐标点可能会定位到西藏地区…后发现原来负经度经解析后,均变成正的

源代码

private void getGeoInfo(String geo) {
	StringBuffer value= new StringBuffer();
	for(char c:geo.toCharArray()){
		if(c>45&&c<58){
			value.append(c);
		}
		if(c==44){
			if(value.length()>0){
				latitude=Double.parseDouble(value.toString());
				value.delete(0, value.length());
			}
		}
	}
	longitude=Double.parseDouble(value.toString());
}

原因:负号("-")的ascii值为45,而if(c>45&&c<58){value.append(c);},显然,不能将负号附加到value中,导致出现西经变东经,南纬跑到北纬。

解决办法:将if(c>45&&c<58) 改为 if(c>44&&c<58) 即可。

private void getGeoInfo(String geo) {
	StringBuffer value= new StringBuffer();
	for(char c:geo.toCharArray()){
		if(c>44&&c<58){      //修改处
			value.append(c);
		}
		if(c==44){
			if(value.length()>0){
				latitude=Double.parseDouble(value.toString());
				value.delete(0, value.length());
			}
		}
	}
	longitude=Double.parseDouble(value.toString());
}

Bug记录:微博的Java SDK返回经纬度错误,布布扣,bubuko.com

时间: 2024-11-05 16:34:58

Bug记录:微博的Java SDK返回经纬度错误的相关文章

微博java SDK介绍及使用说明

转自:作者:新浪微博 开放平台 @MUNTO_AKIRA http://open.weibo.com/blog/%E5%BE%AE%E5%8D%9Ajava-sdk%E4%BB%8B%E7%BB%8D%E5%8F%8A%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E-2 概述 微博JAVA平台SDK为第三方微博应用提供了文档易用的微博API调用服务,使第三方客户端无需了解复杂的验证,API调用过程.并可以实现分享到微博的功能,可以分享文字,或者多媒体信息到内置的分享页面,

微博开发平台java SDK demo学习之friendships

本文解释了在java SDK的demo中与feiendships有关的功能 截图如下: 关注一个用户(需要知道该用户uid) 取消关注一个用户(用户uid) 获取用户粉丝列表(授权用户的screen__ame),最多返回粉丝的30%,上限为500 获取用户粉丝列表(授权用户的uid),最多返回粉丝的30%,上限为500 获取用户粉丝uid列表(授权用户的uid),最多返回粉丝的30%,上限为500 获取用户活跃粉丝列表(授权用户的uid),最多返回粉丝的30%,上限为500 获取用户双向关注的用

Nacos系列:Nacos的Java SDK使用

Maven依赖 Nacos提供完整的Java SDK,便于配置管理和服务发现及管理,以 Nacos-0.8.0 版本为例 添加Maven依赖: <dependency> <groupId>com.alibaba.nacos</groupId> <artifactId>nacos-client</artifactId> <version>0.8.0</version> </dependency> 仅仅引入naco

大数据技术之_18_大数据离线平台_02_Nginx+Mysql+数据收集+Web 工程 JS/JAVA SDK 讲解+Flume 故障后-如何手动上传 Nginx 日志文件至 HDFS 上

十一.Nginx11.1.介绍11.2.常见其他 Web 服务器11.3.版本11.4.Nginx 安装11.5.目录结构11.6.操作命令十二.Mysql12.1.介绍12.2.关系型数据库(SQL)种类12.3.特征12.4.术语12.4.与非关系型数据库比较(Not Only SQL)12.4.1.种类12.4.2.特征12.4.3.总结十三.数据收集13.1.收集方式13.2.数据的事件类型13.2.1.Launch 事件13.2.2.PageView 事件13.3.Nginx 日志收集

java SDK服务端推送 --极光推送(JPush)

网址:https://blog.csdn.net/duyusean/article/details/86581475 消息推送在APP应用中越来越普遍,来记录一下项目中用到的一种推送方式,对于Andriod它并没有自己的原生推送机制,一种简单的推送方式是采用第三方推送服务的方式,即通过嵌入SDK使用第三方提供的推送服务,主流的有百度云推送,极光推送,友盟,个推.亚马逊等等.本篇博文只介绍采用极光推送的方式.        如果你是一个新手,建议你先看完本篇博客,然后在去看官网,这样也许上手会快一

7715平台修改BUG记录

BUG:打开下载菜单,标题栏瞬间显示"文档"; 把AndroidManifast.xml里 <application android:name=".DocumentsApplication" android:label="@string/app_label" android:supportsRtl="true"> 中的 android:label="@string/app_label" 去掉了,

java使用POST发送soap报文请求webservice返回500错误解析

本文使用JAX-WS2.2编译webservice,并使用HttpUrlConnection的POST方式对wsdl发送soap报文进行请求返回数据, 对错误Server returned HTTP response code: 500 的解决方法进行简单分析. 问题描述: 由于课程需要博主需要自己写一个webservice并且通过soap进行请求, 于是使用JAX-WS编译了下面java代码生成webservice服务 生成webservice的java代码: [java] view plai

Apache UIMA Java SDK 2.9.0 版本发布

Apache UIMA Java SDK 2.9.0 发布,腾云科技TY300.COM了解到该版本包含主要功能增强和 bug 修复,详情请看 README 和 RELEASE_NOTES 文件. 增强功能包括: CasIOUtls - a collection of general-purpose CAS load/save utilities, with support for including the type system and index definition information

使用s3 java sdk 分片文件上传API 报‘SignatureDoesNotMatch’ 异常的定位及解决方案

import java.io.File; import com.amazonaws.AmazonClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3.transfer.TransferManager; import com.amazonaws.services.s3.transfer.Upload; public class U