把经纬度转换成十进制
文章来自:http://hi.baidu.com/leo10086/item/37e528dd6e4d3d19d68ed03d
把经纬度转换成十进制的方法很简单
如下就可以了
Decimal Degrees = Degrees + minutes/60 + seconds/3600
例:57°55'56.6" =57+55/60+56.6/3600=57.9323888888888
114°65'24.6"=114+65/60+24.6/3600=结果自己算!
如把经纬度 (longitude,latitude) (205.395583333332,57.9323888888888)
转换据成坐标(Degrees,minutes,seconds)(205°23'44.1",57°55'56.6")。
步骤如下:
1, 直接读取"度":205
2,(205.395583333332-205)*60=23.734999999920 得到"分":23
3,(23.734999999920-23)*60=44.099999995200 得到"秒":44.1
采用同样的方法可以得到纬度坐标:57°55'56.6"
如果需要转换的经纬度数据很多,可以借助Sql查询分析器或Excel来进行转换。这里介绍用Sql实现。
假如我的数据库里的表tableName有以下数据
CREATE TABLE [dbo].[tableName](
[ID] [int] IDENTITY(1,1) NOT NULL,
[address] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[longitude] [float] NULL,
[latitude] [float] NULL
) ON [PRIMARY]
GO
表中的数据
ID address longitude latitude
0 add1 205.3955833 57.93238889
1 add2 205.3911111 57.95194444
2 add3 205.3791667 57.98916667
3 add4 205.3713889 57.95611111
在sql 查询分析器里直接调用以下查询语句
--Declare The longitude,latitude
declare @LoaDeg varchar(50)
declare @LoaMin varchar(100)
declare @LoaSec varchar(100)
declare @LatDeg varchar(50)
declare @LatMin varchar(100)
declare @LatSec varchar(100)
--Set The Variable
Set @LoaDeg='left(longitude,3)'
Set @LoaMin='left((
Set @LoaSec='left((((
Set @LatDeg='left(longitude,3)'
Set @LatMin='left((
Set @LatSec='left((((
--Execute The Command
exec('select ID,address,longitude,
as LoaDegree,
as LoaMinute,
as LoaSecond
,
as LatDegree,
as LatMinute,
as LatSecond
from TableName')
即可得到:
ID address longitude LoaDegree LoaMinute LoaSecond latitude LatDegree LatMinute LatSecond
1 add1 205.3955833 205 23 44 57.93238889 205 23 44
2 add2 205.3911111 205 23 28 57.95194444 205 23 28
3 add3 205.3791667 205 22 45 57.98916667 205 22 45
4 add4 205.3713889 205 22 17 57.95611111 205 22 17
转载于:https://www.cnblogs.com/mikevictor07/archive/2012/09/06/2673962.html
把经纬度转换成十进制相关推荐
- 把度分秒的经纬度转换成十进制的经纬度的工具类
public static double Dms2D(String dms_data) { if (!dms_data.contains("°")&& ...
- matlab经纬度转换行列号,如何在栅格中定位一个点所在的行列号(将十进制经纬度转换成行列号)...
如何在栅格中定位一个点所在的行列号 摘要 第一种方法:利用点要素类的属性表的字段计算器(推荐使用) 第二种方法:利用空间分析的方法(太复杂,不建议使用) 原文链接: http://support.es ...
- 如何把单精度二进制数转换成十进制数?
如何把单精度二进制数转换成十进制数? 单精度二进制数32位,符号1位,指数8位,尾数23位 步骤: 1.如果最高位为1,则为复数,否则为正数. 2.接下来8位为指数,减去二进制01111111(十进制 ...
- Java:十六进制转换成十进制
问题及代码: /* *问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~15分别用大写的英文字母A.B.C.D.E.F表示. *样例输入 ...
- PTA第3章-9 字符串转换成十进制整数 (15 分)
第3章-9 字符串转换成十进制整数 (15 分) 输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出.如果在第 ...
- 十进制小数化为二进制小数的方法是什么_八进制转换成十进制,十进制转换成八进制...
先来看八进制如何转换成十进制.其方法与二进制转换成十进制差不多:按权相加法,即将八进制每位上的数乘以位权(如8,64,512-.),然后将得出来的数再加在一起. 如将72.45转换为十进制.如图1所示 ...
- 计算机13E怎么转换成十进制,十六进制换算(进制转换计算器)
把下面的16进制转为10进制b35de1f058c72a7430241461cd504839dc27438e. 16进制转10进制16进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第 ...
- Oxffff转换成十进制
十六进制0xFFFF可以代表 无 符号数字为 65535: 十六进制0xFFFF可以代表 有 符号数字为 -1.有符号数,是按照补码的形式存放的. 0xFFFF写成二进制,共有16个1. 最高位代表符 ...
- 经纬度转换成屏幕坐标
学期projet总结: 当把点的数据和线的数据读进来之后,为了画出地图还有最重要的一步就是把实际的经纬度转换成屏幕像素点的坐标.在找老师讨论之前,我在网上查资料,找到了下边链接的文章,并按照这个方法画 ...
最新文章
- Variant Analysis(变种分析)——使用已知漏洞发掘未知漏洞
- ES6中新增的字符串方法
- acu风格是什么意思_“高街风格”是什么意思?
- UML中聚合和组合的关系(笔记)
- mysql @value := 用法
- 11种常见SQLMAP使用方法详解
- GHOST_XP详细制作过程
- SharedPointer
- 95. Leetcode 1049. 最后一块石头的重量 II (动态规划-背包问题)
- margin和padding分别适合什么场景使用?
- 利用日志传送实现高可用性
- esxi直通 gen8_HP MicroServer Gen8与ESXI采坑之旅
- layuiajax提交表单控制层代码_漏洞预警|ThinkPHP 5.0 远程代码执行
- 转圈游戏(luogu 1965)
- mybatis学习(9):mybatis连接mysql数据库
- 这次,甘肃的老百姓办理就医再也不用等了
- 最短路 Codeforces Round #103 (Div. 2) D. Missile Silos
- inDesign教程,如何创建杂志风标注?
- django 静态文件的配置 orm 中 字段与数据的增删改查 使用MySQL数据库
- 深度神经网络 卷积神经网络_改善深度神经网络