资源简介
cat021报文解析,使用C++语言实现(常规数据段的解析方式已在程序中体现,还有部分数据段的解析待完成),欢迎随时交流。
代码片段和文件信息
// cat021_test_1.cpp : 定义控制台应用程序的入口点。
//使用C++对网络数据包进行解析
//解析cat021(V0.26版)报文——C++
#include “stdafx.h“
#include“ComputeValue.h“
#include
#include
#include
#include
#include
#include
#include
#include
//using namespace std;
using std::cout;
using std::endl;
using std::vector;
using std::list;
using std::string;
class DatagramUap
{
private:
int frn len;
string dataitemname;//数据名
string dataitemNum;//数据编号
vector databytes; //解析之后每个数据项对应的字节—存放处(容器)
public:
void setFrn(int value3)
{
frn = value3;
}
int getfrn() { return frn; }
void setLen(int value4)
{
len = value4;
}
int getLen() { return len; }
void setDataitemname(string value5)
{
dataitemname = value5;
}
string& getDataitemname() { return dataitemname; }
void setDataitemNum(string value6)
{
dataitemNum = value6;
}
string& getDataitemNum() { return dataitemNum; }
void setDatabytes(vector value)
{
databytes = value;
}
vector getDatabytes()
{
return databytes;
}
};
class DataBlock
{
private:
int cat len;
list dataitem;
public:
void setCat(int value1)
{
cat = value1;
}
int getCat() { return cat; }
void setLen(int value2)
{
len = value2;
}
int getLen(){ return len; }
void setDataitem(list vl)
{
dataitem = vl;
}
list getDataitem() { return dataitem; }
};
//系列函数(function)
//计算数据项的值
//系列函数(function)
//计算数据源识别项(1021/010)对应的值
int DataSourceIdentifiction(vector lhs)
{
int temp0 temp1;
temp0 = lhs[0];
temp1 = lhs[1];
cout << “SAC:“ << temp0 << “;“;
cout << “SIC:“ << temp1 << endl << endl;
return 0;
}
//计算发射体类型项(1021/020)对应的值
int EmitterCategory(vector lhs)
{
int rhs;
rhs = lhs[0];
if (rhs == 0)
{
cout << “EMITTER:未知“ << endl< }
else if (rhs == 1||rhs==12)
{
cout << “EMITTER:轻型飞机“ << endl< }
else if (rhs == 3)
{
cout << “EMITTER:中型飞机“ << endl< }
else if (rhs == 5)
{
cout << “EMITTER:重型飞机“ << endl< }
else if (rhs == 6)
{
cout << “EMITTER:高机动及高速飞机“ << endl< }
else if (rhs == 10)
{
cout << “EMITTER:旋翼飞机“ << endl< }
else if (rhs == 11)
{
cout << “EMITTER:滑翔机“ << endl< }
else if (rhs == 13)
{
cout << “EMITTER:无人机“ << endl< }
else if (rhs == 14)
{
cout << “EMITTER:太空飞行器 /穿越大气层的飞行器“ << endl< }
else if (rhs == 15)
{
cout << “EMITTER:超轻型飞机 /手持式滑翔机 /滑翔伞“ << endl< }
else if (rhs == 16)
{
cout << “EMITTER:伞兵/跳伞运动员“ << endl< }
else if (rhs == 20)
{
cout << “EMITTER:地面应急车辆“ << endl< }
else if (rhs == 21)
{
cout << “EMITTER:地面服务车辆“ << endl< }
else if (rhs == 22)
{
cout << “EMITTER:固定的地面或系留障碍物“ << endl< }
return 0;
}
//计算日时间项(1021/030)对应的值
int TimeOfDay(vector lhs)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-08-03 14:29 cat021_test_1\
目录 0 2018-08-03 14:27 cat021_test_1\.vs\
目录 0 2018-08-03 14:27 cat021_test_1\.vs\cat021_test_1\
目录 0 2018-08-03 14:27 cat021_test_1\.vs\cat021_test_1\v14\
文件 40448 2018-08-03 14:29 cat021_test_1\.vs\cat021_test_1\v14\.suo
目录 0 2018-08-03 14:27 cat021_test_1\.vs\cat021_test_1\v15\
文件 44544 2018-07-15 22:39 cat021_test_1\.vs\cat021_test_1\v15\.suo
文件 38645760 2018-07-15 22:39 cat021_test_1\.vs\cat021_test_1\v15\Browse.VC.db
目录 0 2018-08-03 14:27 cat021_test_1\.vs\cat021_test_1\v15\ipch\
文件 3604480 2018-07-15 21:56 cat021_test_1\.vs\cat021_test_1\v15\ipch\f36b33867ef4696d.ipch
文件 1321 2018-07-11 11:53 cat021_test_1\cat021_test_1.sln
目录 0 2018-08-03 14:28 cat021_test_1\cat021_test_1\
文件 31089 2018-08-03 14:28 cat021_test_1\cat021_test_1\cat021_test_1.cpp
文件 8107 2018-08-03 14:12 cat021_test_1\cat021_test_1\cat021_test_1.vcxproj
文件 1414 2018-07-16 16:10 cat021_test_1\cat021_test_1\cat021_test_1.vcxproj.filters
文件 165 2018-07-15 17:51 cat021_test_1\cat021_test_1\cat021_test_1.vcxproj.user
文件 58 2018-07-16 16:13 cat021_test_1\cat021_test_1\ComputeValue.h
目录 0 2018-08-03 14:27 cat021_test_1\cat021_test_1\Debug\
文件 227 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.log
文件 715545 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.obj
文件 3407872 2018-07-16 09:12 cat021_test_1\cat021_test_1\Debug\cat021_test_1.pch
目录 0 2018-08-03 14:27 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\
文件 222 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\cat021_test_1.lastbuildstate
文件 1610 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\CL.command.1.tlog
文件 24464 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\CL.read.1.tlog
文件 1132 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\CL.write.1.tlog
文件 1350 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\li
文件 2796 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\li
文件 594 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\cat021_test_1.tlog\li
文件 11937 2018-07-16 09:12 cat021_test_1\cat021_test_1\Debug\stdafx.obj
文件 732160 2018-07-19 16:48 cat021_test_1\cat021_test_1\Debug\vc140.idb
............此处省略27个文件信息
- 上一篇:C++版_STC跟踪代码(多尺度)
- 下一篇:c语言编写的自助旅游系统学校课设
评论
共有 条评论