資源簡(jiǎn)介
cat021報(bào)文解析,使用C++語(yǔ)言實(shí)現(xiàn)(常規(guī)數(shù)據(jù)段的解析方式已在程序中體現(xiàn),還有部分?jǐn)?shù)據(jù)段的解析待完成),歡迎隨時(shí)交流。
代碼片段和文件信息
//?cat021_test_1.cpp?:?定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。
//使用C++對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行解析
//解析cat021(V0.26版)報(bào)文——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;//數(shù)據(jù)名
string?dataitemNum;//數(shù)據(jù)編號(hào)
vector?databytes;??//解析之后每個(gè)數(shù)據(jù)項(xiàng)對(duì)應(yīng)的字節(jié)—存放處(容器)
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;?}
};
//系列函數(shù)(function)
//計(jì)算數(shù)據(jù)項(xiàng)的值
//系列函數(shù)(function)
//計(jì)算數(shù)據(jù)源識(shí)別項(xiàng)(1021/010)對(duì)應(yīng)的值
int?DataSourceIdentifiction(vector?lhs)
{
int?temp0?temp1;
temp0?=?lhs[0];
temp1?=?lhs[1];
cout?<“SAC:“?< cout?<“SIC:“?< return?0;
}
//計(jì)算發(fā)射體類型項(xiàng)(1021/020)對(duì)應(yīng)的值
int?EmitterCategory(vector?lhs)
{
int?rhs;
rhs?=?lhs[0];
if?(rhs?==?0)
{
cout?<“EMITTER:未知“?< }
else?if?(rhs?==?1||rhs==12)
{
cout?<“EMITTER:輕型飛機(jī)“?< }
else?if?(rhs?==?3)
{
cout?<“EMITTER:中型飛機(jī)“?< }
else?if?(rhs?==?5)
{
cout?<“EMITTER:重型飛機(jī)“?< }
else?if?(rhs?==?6)
{
cout?<“EMITTER:高機(jī)動(dòng)及高速飛機(jī)“?< }
else?if?(rhs?==?10)
{
cout?<“EMITTER:旋翼飛機(jī)“?< }
else?if?(rhs?==?11)
{
cout?<“EMITTER:滑翔機(jī)“?< }
else?if?(rhs?==?13)
{
cout?<“EMITTER:無(wú)人機(jī)“?< }
else?if?(rhs?==?14)
{
cout?<“EMITTER:太空飛行器?/穿越大氣層的飛行器“?< }
else?if?(rhs?==?15)
{
cout?<“EMITTER:超輕型飛機(jī)?/手持式滑翔機(jī)?/滑翔傘“?< }
else?if?(rhs?==?16)
{
cout?<“EMITTER:傘兵/跳傘運(yùn)動(dòng)員“?< }
else?if?(rhs?==?20)
{
cout?<“EMITTER:地面應(yīng)急車輛“?< }
else?if?(rhs?==?21)
{
cout?<“EMITTER:地面服務(wù)車輛“?< }
else?if?(rhs?==?22)
{
cout?<“EMITTER:固定的地面或系留障礙物“?< }
return?0;
}
//計(jì)算日時(shí)間項(xiàng)(1021/030)對(duì)應(yīng)的值
int?TimeOfDay(vector?lhs)
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????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個(gè)文件信息
評(píng)論
共有 條評(píng)論