c#代码实现GPS数据的有效性校验

用于校验GPS报文指令的有效性 很简单的代码,留存吧

public static bool Verify(string gpsInfo)         {
            if (gpsInfo == null || "".Equals(gpsInfo))
                return false;

char p = gpsInfo[0];
            char c = (char)0;

int i = 1;
            for (; i < gpsInfo.Length; i++)
            {
                p = gpsInfo[i];
                if (p == ‘*‘)
                    break;
                c ^= p;
            }

if (p != ‘*‘)
                return false;

return gpsInfo.Substring(++i).Equals(string.Format("{0:X}", (int) c));
        }

--------------------------------------

c#代码实现GPS数据的有效性校验

时间: 2024-10-05 18:22:51

c#代码实现GPS数据的有效性校验的相关文章

C#校验GPS数据

从#或$后开始,到*之前是GPS数据,*之后是校验位. public bool Verified(string gps) { gps = gps.TrimStart('#', '$'); var s = gps.Split('*'); if(s.Length < 2) return false; var sum = 0; foreach (var c in s[0]) sum ^= c; return s[1].Equals(string.Fromat("{0:X}", sum)

GPS数据解析

1.摘要 GPS模块使用串口通信,那么它的的数据处理本质上还是串口通信处理,只是GPS模块的输出的有其特定的格式,需要字符串处理逻辑来解析其含义.如何高效的处理从GPS模块接收到的数据帧,是GPS驱动设计的重点,本文使用状态机的思想来处理GPS输出的串口数据流,相对于定时从串口环形bufer取数据包然后依次解析有更高的实时性并且单片机负荷更低. 2. GPS数据协议简介 常用的GPS模块大多采用NMEA-0183 协议,目前业已成了GPS导航设备统一的RTCM(Radio Technical C

使用Socket通信实现Silverlight客户端实时数据的获取(模拟GPS数据,地图实时位置)

原文:使用Socket通信实现Silverlight客户端实时数据的获取(模拟GPS数据,地图实时位置) 在上一篇中说到了Silverlight下的Socket通信,在最后的时候说到本篇将会结合地图.下面就来看看本文实现的功能: Silverlight 与服务器利用Socket通讯,实时从服务器获取数据(本文中的数据是地理坐标),由于没有GPS,所以本文在服务器写了一个构造新坐标的函数(本文是一个三角函数),然后利用Timer组件,实时调用,得到新的坐标,并将新的坐标发送给客户端,客户端接收到发

GPS数据读取与处理

转自:http://www.cnblogs.com/emouse/archive/2013/05/29/3105745.html GPS模块简介 SiRF芯片在2004年发布的最新的第三代芯片SiRFstar III(GSW 3.0/3.1),使得民用GPS芯片在性能方面登上了一个顶峰,灵敏度比以前的产品大为提升.这一芯片通过采用20万次/频率的相关器提高了灵敏度,冷开机/暖开机/热开机的时间分别达到42s/38s/8s,可以同时追踪20个卫星信道.是目前市场上应用最为广泛,同时性价比也非常高的

Android使用代码消除App数据并重新启动设备

/** * 使用代码消除App数据 * 我们不寻常的清除App数据,中找到相应的App * 然后选择其清除数据.以下给出代码实现. * * 注意事项: * 1 设备须要root * 2 该演示样例中删除的是系统级应用 * 2 注意在命令的末尾须要加上换行\n * 这就相当于我们平时在Dos中输入命令后再换行一样. * 否则命令不会被运行. */ private void cleanData(String packageName){ try { System.out.println("--->

内存分配(堆、栈、BSS、代码段、数据段)

这两天看了马士兵老师的视频.视频中提到了一个万能钥匙.就是了解程序运行中对内存的操作.主要讲了堆.栈.Data.说真的有点晕.看了两遍.也就略懂一二.在这做个小小知道总结 简介 我们程序运行的时候都是放在内存里的.根据静态.成员函数.代码段.对象.等等.放在不同的内存分块里.大概分为5块 1  栈 2  堆 3 BSS段-全局区-(静态区) 4 代码段 5 数据段 栈 存放局部变量.临时变量.声明.返回值.指向堆对象的地址(指针).总之存放一些小的东西.当不需要时候.栈会自动清除.比如一个加法方

跑GPS数据记录

打开终端,登入到root,进入/home/newday下 在本地用pscp命令上传.zip的GPS数据 在hadoop8上 unzip trackgps_0811 ./tackgps_0811 //解压缩到指定目录 然后,运行Merge.jar hadoop jar Merge.jar tackgps_0811 hdfs://hadoop8:8020/Anewday/0811_merge.csv 然后运行PreGPS.jar,目的:筛选属性值,line_code date_label值给GPS数

EF CodeFirs 代码迁移、数据迁移

最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    标题叫EF CodeFirs 代码迁移.数据迁移. 那么:到底叫代码迁移还是数据迁移?我在网上看了大半天,怎么叫的都有,后来查了MSDN,MSDN上叫代码迁移.在此,我们也称之为代码迁移. 为什么有人将其称为数据迁移呢?可能是因为本节内容和操作数据库有关<增加一张表,删除一张表,增加一个表字段,删除一个表字段,修改一个表字段等>,所以网友称之为数

Java代码实现excel数据导入到Oracle

1.首先需要两个jar包jxl.jar,ojdbc.jar(注意版本,版本不合适会报版本错误)2.代码: Java代码   import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.Bi