经纬度、时分秒转换的C#类
一:新建一个包含经纬度、时间转换的类optaDataConvert
public class optaDataConvert
{ /// <summary>
/// 时间转换
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static DateTime GetDataTime(long value)
{
return new DateTime(, , ).AddMilliseconds(value).AddHours();
}
/// <summary>
/// 获取经度
/// </summary>
/// <returns></returns>
public static string GetLongitudeValue(decimal value)
{
ArrayList arrList = LgetValid(value);
if (arrList == null)
return string.Empty;
if (arrList.Count != )
return string.Empty;
return string.Format("{0}°{1}.{2}' {3}", arrList[], arrList[], arrList[], value > ? "E" : "W");
}
/// <summary>
/// 获取纬度
/// </summary>
/// <returns></returns>
public static string GetLatitudeValue(decimal value)
{
ArrayList arrList = LgetValid(value);
if (arrList == null)
return string.Empty;
if (arrList.Count != )
return string.Empty;
return string.Format("{0}°{1}.{2}' {3}", arrList[], arrList[], arrList[], value > ? "N" : "S");
}
/// <summary>
/// 获取经纬度度分秒
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public static ArrayList LgetValid(decimal value)
{
ArrayList aList = new ArrayList();
string excute = ChangeValue(value);
string[] sArray = excute.Split('|');
aList.Insert(, sArray[]);
aList.Insert(, sArray[]);
aList.Insert(, sArray[]);
return aList;
}
/// <summary>
/// 经纬度转换
/// </summary>
/// <param name="str">经度</param>
/// <param name="num">保留8位值</param>
/// <returns></returns>
protected static string ChangeValue(decimal degree)
{
if (degree < )
{
degree = -degree;
}
decimal minute = (degree - (int)degree) * ;
decimal second = (minute - (int)minute) * ;
return ((int)degree).ToString() + "|" + ((int)minute).ToString() + "|" + ((int)second).ToString();
}
public static decimal TimeToValue(string Degrees, string Minutes, string Seconds)
{
decimal Value = decimal.Parse(Minutes) + decimal.Parse(Minutes) / + decimal.Parse(Seconds) / ;
return Value;
}
} }
二:调用该函数
1.把时分秒转换成经纬度存储
m_cardpoint.X = optaDataConvert.TimeToValue(X_Du.Text, X_Fen.Text, X_Miao.Text);
m_cardpoint.Y = optaDataConvert.TimeToValue(Y_Du.Text, Y_Fen.Text, Y_Miao.Text); (其中m_cardpoint.X 、m_cardpoint.Y 为存储经纬度的值)
2.把经纬度转换成时分秒展示在前台
ArrayList arrlistLatitude = optaDataConvert.LgetValid(m_cardpoint.Y);
Y_Du.Text = arrlistLatitude[].ToString();
Y_Fen.Text = arrlistLatitude[].ToString();
Y_Miao.Text = arrlistLatitude[].ToString();
经纬度、时分秒转换的C#类的更多相关文章
- C# 版本的 计时器类:精确到微秒 秒后保留一位小数 支持年月日时分秒带单位的输出
class TimeCount { // 临时变量,存放当前类能表示的最大年份值 ; /// <summary> /// 获取毫秒能表示的最大年份数 /// </summary> ...
- python时间时分秒与秒数的互相转换
受到Unix时间戳的启发,我发现时间转成秒数后会非常好处理,在程序当中不再是以字符串的形式处理,不管时间的加减还是获取随机的时间点都变得非常方便, 如果有需要,也很容易转换成需要的时间格式. 一:时间 ...
- PHP 将秒数转换成时分秒
将秒数转换成时分秒,PHP提供了一个函数gmstrftime,不过该函数仅限于24小时内的秒数转换.对于超过24小时的秒数,我们应该怎么让其显示出来呢,例如 34:02:02 $seconds = 3 ...
- PHP函数gmstrftime()将秒数转换成天时分秒
http://yangjunwei.com/a/930.html PHP函数gmstrftime()将秒数转换成天时分秒 一个应用场景需要用到倒计时的时分秒,比如新浪微博授权有效期剩余: 7天16 ...
- Oracle数据库使用mybatis的时候,实体类日期为Date类型,mybatis里面定义的是Date类型,插入的时候,时分秒全部是12:00:00问题
实体类中日期定义的是Date类型的,没毛病: 我在mybatis里面定义的是Date类型的,进行测试的时候发现,数据库插入的日期的时分秒全部都是一样的,都是12:00:00,很郁闷: 后来把mybat ...
- js 时分秒与秒数的转换
1. 时间戳 格式化为 时分秒(00:00:00) /** * 时间秒数格式化 * @param s 时间戳(单位:秒) * @returns {*} 格式化后的时分秒 */ var sec_to_t ...
- java.sql.date与java.util.date区别以及数据库中插入带时分秒的时间
java.sql.Date,java.sql.Time和java.sql.Timestamp三个都是java.util.Date的子类(包装类). java.sql.Date是java.util.Da ...
- 2018.2.2 java中的Date如何获取 年月日时分秒
package com.util; import java.text.DateFormat; import java.util.Calendar; import java.util.Date; pub ...
- Oracle 把秒转成时分秒格式(hh24:mm:ss);检测字符串是否是数字;字符串转换为数字
不说废话,贴代码: CREATE OR REPLACE FUNCTION to_time(sec IN NUMBER) RETURN VARCHAR2 IS /*把秒转成时分秒格式 auth lzpo ...
随机推荐
- 微信小程序 - 调用腾讯地图插件
1. 登录公众号平台 https://mp.weixin.qq.com/ 2. 设置->第三方服务->添加插件->输入插件名称->申请 3. 项目中使用 3.1 app.jso ...
- 从零开始学JavaScript一(简介)
概要:JavaScript的组成. 各个组成部分的作用 . 一.JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成 Javascript ECMAScript(核心) DOM ...
- Spring -- 三种配置方式
1.Explicit configuration in XML:显示的XML配置. 优点: 1)XML配置方式进一步降低了耦合,使得应用更加容易扩展,即使对配置文件进一步修改也不需要工程进行修改和重新 ...
- 浅析MySQL各种索引
MySQL各种索引(由于是浅析大多都不刻意区分搜索引擎) INDEX(普通索引):最主要的索引.没有不论什么限制 ALTER TABLE `table_name` ADD INDEX index_na ...
- WebApi 数据保护操作未成功。这可能是由于未为当前线程的用户上下文加载用户配置文件导致的。当线程执行模拟时,可能会出现此情况。","ExceptionType":"System.Security.Cryptography.CryptographicException","StackTrace
在调用System.Security.Cryptography.ProtectedData.Protect方法来保护私密信息时,IIS可能会报以下错误:CryptographicException: ...
- java 如何取前32位全是1的int型数据的后八位
直接&255 因为Integer.toBinaryString(255) 是 8个1. 如果一个负数byte转成int则前面全部会补1,就是24个1和它自己的八位,,于是和八个1相&就 ...
- Android基于TCP的局域网聊天通信
概述 在同一局域网内,两台设备通过TCP进行通信聊天. 详细 代码下载:http://www.demodashi.com/demo/10567.html 一.准备工作 开发环境 jdk1.8 Ecli ...
- 6种.net分布式缓存解决方式
6种.net分布式缓存解决方式 1. 使用内置ASP.NET Cache (System.Web.Caching) : https://msdn.microsoft.com/en-us/lib ...
- aop:declare-parents注解
http://www.blogjava.net/jackfrued/archive/2010/02/27/314060.html <aop:aspect> <aop:declare- ...
- MyBatis JdbcType 与Oracle、MySql数据类型对应关系详解
本文转自:http://blog.csdn.net/loongshawn/article/details/50496460 1. Mybatis JdbcType与Oracle.MySql数据类型对应 ...