经纬度、时分秒转换的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 ...
随机推荐
- strcpy sprintf memcpy 它们之间的区别
strcpy,sprintf,memcpy的区别 strcpy 函数操作的对象是 字符串,完成 从 源字符串 到 目的字符串 的 拷贝 功能. snprintf 函数操作的对象 不限于字符串:虽然目 ...
- wepy - 与原生有什么不同(事件更改)
对于repeat,详情见官方文档 <style lang="less"> .userinfo { display: flex; flex-direction: colu ...
- less 命令(转)
原文:http://www.cnblogs.com/peida/archive/2012/11/05/2754477.html less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux ...
- kafka delete topic
Don't think it is supported yet. Take a look at this JIRA tracking Delete Topic. For delete manually ...
- 关闭ubuntu终端的BELL声音
在shell提示符下面操作时有时会用到Tab来自动补全,这个时候系统就会发出BELL的声音,听了让人挺烦的. 有个方法能解决:编辑 /etc/inputrc,找到#set bell-style non ...
- Unable to read TLD "META-INF/c.tld" from JAR file
Unable to read TLD "META-INF/c.tld" from JAR file CreationTime--2018年7月18日17点46分 Author: ...
- 微信小程序项目实战之天气预报
概述 微信小程序项目实战之天气预报 详细 代码下载:http://www.demodashi.com/demo/10634.html 一.准备工作 1.注册微信小程序 2.注册和风天气账号 3.注册百 ...
- Android Listview 隐藏滚动条
在<ListView>标签中设置属性. android:fastScrollEnabled="false" 以下属性scrollbars可以设置为none也可以不设置为 ...
- useradd或者userdel相关用户管理命令不好用
前言 有时使用useradd或者userdel会出现如下报错: userdel: cannot open /etc/passwd 很明显是/etc/passwd文件导致的 一.查看以及改变文件状态 [ ...
- IDEA编辑区光标样式修改
转自:http://blog.csdn.net/aosica321/article/details/52787418 Intellj IDEA光标为insert状态,无法删除内容以前用得是社区版的ID ...