经纬度、时分秒转换的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 ...
随机推荐
- Idea Spring-boot gradle lombok
1:build.gradle compile("org.projectlombok:lombok:1.16.16") 2:idea安装lombok插件 3:设置 4:重启
- html5 canvas类库 实例
http://threejs.org/examples/ http://ocanvas.org/demos https://processing.org/examples/rotatexy.html ...
- Android开发之发送邮件功能的实现(源码分享)
Android开发中可能会碰到怎样发送邮件的困扰,之前我也查了相关的文档,博友们也分享了不少的发送邮件的办法.总共同拥有3种把,我细致阅读了下,发现有的讲的太过复杂跟麻烦,不够清晰.我今天就来分享下我 ...
- javascript ActiveX 获取ip和MAC
<HTML><HEAD><TITLE>WMI Scripting HTML</TITLE> <META http-equiv=Content-Ty ...
- 基于cancel的不全然恢复
实验:基于cancel的不全然恢复 实验环境查看 lsnrctl status select open_mode from v$database; --监听与数据库状态 show paramete ...
- java线上应用问题排查方法和工具
linux性能监测点 CPU, Memory, IO, Network Linux性能监测工具-cpu 基本概念: 上下文切换(Context Switches): 如果可运行的线程数大于CPU的数量 ...
- 140730暑期培训.txt
1.大数加减法 思路分析: 1.将数据当做字符串输入(gets(s)) 2.将字符型转换为整型,逆着存 char? int i=0,j ...
- HDUOJ--8球胜负
8球胜负 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 【Linux】忘记root密码
常常有些朋友在配置好了Linux之后,结果root密码给他忘记去!要重新安装吗?不需要的,你只要以单人维护模式登陆即可更改你的root密码!下面以Redhat linux5为例 1)先将系统重新启动, ...
- 页面livereload width grunt
step-1. 安装node 环境 step-2. npm install grunt-cli \ grunt http://www.gruntjs.net/docs/getting-sta ...