C++ 解析GPS数据示例
来源:互联网 发布:java给图片加水印 编辑:程序博客网 时间:2024/05/17 23:05
C++ 解析GPS数据示例: GPS数据类型示例: $GPGGA,025620.00,2602.33721,N,11911.49176,E,2,04,1.63,13.5,M,9.9,M,,0000*5D $GPRMC,025620.20,A,2602.33722,N,11911.49176,E,0.100,,281211,,,D*79 $GPGGA,025620.20,2602.33722,N,11911.49176,E,2,04,1.63,13.3,M,9.9,M,,0000*5A $GPRMC,025620.40,A,2602.33723,N,11911.49174,E,0.098,,281211,,,D*7C //示例程序 VS 测试通过 /* 功能 C++解析GPS数据并显示 时间 2016-04-22*/ #include<fstream> #include<string> #include<iostream> #include<vector> #include<sstream> using namespace std; //数据类型转换模板函数 template <class Type> Type stringToNum(const string str) { istringstream iss(str); Type num; iss >> num; return num; } int main() { ifstream is("D:/gpstest.txt"); string line; getline(is,line); //读取第一行 GGA格式 $GPGGA,025620.00,2602.33721,N,11911.49176,E,2,04,1.63,13.5,M,9.9,M,,0000*5D//GGA字段含义 语句ID,UTC时间,纬度,N/S,经度,E/W,GPS状态,卫星数量,精度因子,海拔 。。。 vector<string> arr1; //定义一个字符串容器 int position = 0; do { string tmp_s; position = line.find(","); //找到逗号的位置 tmp_s = line.substr(0,position); //截取需要的字符串 line.erase(0,position+1); //将已读取的数据删去 arr1.push_back(tmp_s); //将字符串压入容器中 }while(position != -1); position = 0; getline(is,line); //读取第二行 RMC格式 $GPRMC,025620.20,A,2602.33722,N,11911.49176,E,0.100,,281211,,,D*79 //RMC字段含义 语句ID,UTC时间,GPS状态,纬度,N/S,经度,E/W,速度(节),,UTC日期,,,校验值 vector<string> arr2; do { string tmp_s; position = line.find(","); tmp_s = line.substr(0,position); line.erase(0,position+1); arr2.push_back(tmp_s); }while(position != -1); is.close(); //构造日期时间字符串 YYYY-MM-DD HH:MM:SS string datetime = "20"+arr2[9].substr(4,2)+"-"+arr2[9].substr(2,2)+"-"+arr2[9].substr(0,2)+" "+arr1[1].substr(0,2)+":"+arr1[1].substr(2,2)+":"+arr1[1].substr(4,2); cout<<"UTC时间:"<<datetime<<endl;double d0 = stringToNum<double>(arr1[2]); cout<<"经度:"; printf("%lf\n",d0/100); //此处不能使用cout,否则输出精度将受到影响 double d1 = stringToNum<double>(arr1[4]); cout<<"纬度:"; printf("%lf\n",d1/100); cout<<"海拔:"<<arr1[9]<<arr1[10]<<endl; return 0; } /* 运行结果 UTC时间:2011-12-28 02:56:20 经度:26.023372 纬度:119.114918 海拔:13.5M */
0 0
- C++ 解析GPS数据示例
- GPS数据解析 GPS 数据格式
- GPS数据解析
- gps数据解析
- GPS数据解析
- GPS数据解析
- GPS NMEA数据解析
- GPS数据解析程序
- GPS数据解析
- NMEALIB C GPS 解析
- android获取解析GPS数据
- GPS的NMEA数据解析
- GPS的NMEA数据解析
- GPS的NMEA数据解析
- sim808 gps 定位数据解析
- GPS数据包格式+数据解析
- GPS数据包格式+数据解析
- gps 数据解析-NMEA 0183协议
- 使用JS写当前系统时间,星期脚本,每分钟刷新
- lua运行优点
- B2C
- NYOJ 635 Oh, my goddess
- 我的网管生涯和艳遇。
- C++ 解析GPS数据示例
- Servlet生命周期与工作原理
- b B kb kB kbps KBps 换算
- 前端开发APP,从HBuilder开始~
- APP发布的图文教程
- sql按字段值进行统计
- C# Redis Server分布式缓存编程(一)
- LeetCode *** 31. Next Permutation
- django的url 正则表达