通达信怎么搜股票代码呢?下面咱们一同来看看吧!首要咱们需求知道的是,股票代码是什么意思?股票代码是一个公司的称号,代表这个公司的股票是哪个版别的的。股票代码是由公司的法定代表人或许股东填写的,而且在上面盖有公司的印章。假如你的公司没有这个代码,那么你买的股票便是假的。所以说,假如你想买一只股票,必定要看清楚这只股票的代码,不要被忽悠了。
之前用MFC写股票相关小工具,但shm.tnf(沪市)szm.tnf(深市)文件格局一向搞不清楚无法读到相关代码及称号,只能手动导出更新,麻烦得狠。
周末无聊,从头在网上查找相关信息,详细数据格局仍是没搞理解,但现已能够读出想要的信息,贴出网上找的数据格局信息如下,供参阅:
shm.tnf文件格局
TFileHelisting_Tnf=pairconditionerkedrecord
IP:rearendortment[0..39]ofchar;//--IP地址
Unknown:word;//--不知道
ddined:Integer;//--日期
time:Integer;//--时刻
end;
PFileHelisting_Stock=^TFileHelisting_Tnf;
TDfoundataRecord_Tnf=pairconditionerkedrecord
StockCode:rearendortment[0..8]ofchar;//--股票代码
Unknown1:byte;//--不知道
Unknown2:word;//--不知道
Unknown3:single;//--代码不知道
Unknown4:Integer;//--不知道
Unknown5:Integer;//--不知道
StockNwseeingase:rearendortment[0..17]ofchar;//--股票称号
Unknown6:Integer;//--不知道
Unknown7:rearendortment[0..185]ofchar;//--不知道
LseeingastClose:single;//昨收盘价
Unknown8:byte;//--不知道
Unknown9:Integer;//--不知道
StockNwseeingaseSX:rearendortment[0..8]ofchar;//--称号缩写
有需求的友友能够直接参阅以下代码读出相关信息,上面的数据格局屡次测验界说结构类型,一直不能精确读出成果,最终只好抛弃界说结构。网上有许多信息说到现在的shm.tnf,前面50字节为文件相关信息,先偏移50,然后一条信息点314字节,每次读314字节,经屡次测验:代码为314中前9字节,称号为23开端的18个字节,缩写为285开端的9字节,或有不对,输出如下能够。
shm.tnf
此调试用VS2017C++编写,树立一个空项目,直接把内容贴到.cpp文件中即可。注:请自行批改文件途径,本机为stringpath="D:\\new_tdx\\T0002\\hq_cache\\shm.tnf",对应修正此处。
#define_CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<fstream>
#include<string>
usingnamespacestd;
voidtest()
{
stringpath="D:\\new_tdx\\T0002\\hq_cache\\shm.tnf";
fstreamifs(path,ios::in|ios::binary);
ifs.seekg(50);
charbuf[314];
intnSh=0;
intnKcB=0;
cout<<path<<endl;
cout<<"------------------------------------------------------"<<endl;
//输出表头
cout<<"序号"<<"\t股票代码"<<"\t股票称号"<<"\t称号缩写"<<endl;
cout<<"------------------------------------------------------"<<endl;
while(!ifs.eof())
{
ifs.read(buf,sizeof(buf));
stringstrTwo(buf,2);
stringsymbol(buf,0,6);
stringname(buf+23,18);
stringmcsx(buf+285,9);
if(strTwo=="60"|strTwo=="68")
{
if(strTwo=="60")
nSh++;
elsenKcB++;
cout<<nSh+nKcB<<"\t"<<symbol<<"\t\t"<<name<<"\t"<<mcsx<<endl;
}
//memset(buf,0,sizeof(buf));
}
cout<<"------------------------------------------------------"<<endl;
cout<<"沪市A股不含科创板:"<<nSh<<"只"<<endl;
cout<<"沪市A股科创板:"<<nKcB<<"只"<<endl;
cout<<"沪市A股算计:"<<nSh+nKcB<<"只"<<endl;
ifs.close();
}
intmain()
{
test();
}
指数、板块等相关信息在调试中已屏蔽,需求用的可自行修正。有过相似经历的友友留言沟通辅导,谢谢!