关于区号查询与电话精灵的数据库说明

 

1. __ccProvince[]

省的信息。包括:省的首字母;名称;多少个城市。

typedef struct tagPROVINCE

{

       char chPy;

       char reserved;

       char szName[MAX_PROVLEN];    //8个字节。省名称

       WORD nCountyCount;

}PROVINCE;

eg:

0x61,0x00,0x89,0x5b,0xbd,0x5f,0x00,0x00,0x00,0x00,0x10,0x00,

//解释:0x61—字母a;0x00—保留;0x89,0x5b,0xbd,0x5f,0x00,0x00,0x00,0x00—安徽的UCS2;0x10,0x00—16个城市

 

0x62,0x00,0x17,0x53,0xac,0x4e,0x00,0x00,0x00,0x00,0x01,0x00

//解释:0x62—字母b;0x00—保留;0x17,0x53,0xac,0x4e,0x00,0x00,0x00,0x00—北京的UCS2;0x01,0x00—1个城市

 

0x66,0x00,0x8f,0x79,0xfa,0x5e,0x00,0x00,0x00,0x00,0x09,0x00

//解释:0x66—字母f;0x00—保留;0x79,0xfa,0x5e,0x00,0x00,0x00,0x00—福建的UCS2;0x09,0x00—9个城市

 

 

 

2._ccCounty

每个省中包含的城市的信息。包括:省的序号+城市的首字母+城市名称+城市区号。

数据结构:

typedef struct tagCOUNTY

{

       char nProv;                                                     //省的序号

       char chPy;                                                      //城市的首字母

       char szName[MAX_COUNTYLEN];            //12个字节。城市名称,后来改为14字节

       char szAreaCode[MAX_AREACODELEN]; //10个字节。城市区号,后来改为12字节(香港,澳门,台湾都是5位。)

}COUNTY;

实例:

0x00,0x61,0x89,0x5b,0x86,0x5e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x35,0x00,0x35,0x00,0x36,0x00,0x00,0x00

0x00—省的序号;0x61—城市的首字母(安庆);0x89,0x5b,0x86,0x5e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00—城市名称(安庆);

0x30,0x00,0x35,0x00,0x35,0x00,0x36,0x00,0x00,0x00—城市区号

 

0x00,0x62,0x8c,0x86,0xe0,0x57,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x35,0x00,0x35,0x00,0x32,0x00,0x00,0x00

0x00—省的序号;0x62—城市首字母(蚌埠);0x8c,0x86,0xe0,0x57,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00—城市名称(蚌埠);

0x30,0x00,0x35,0x00,0x35,0x00,0x32,0x00,0x00,0x00—城市区号

 

 

3. __ccCountyByAreaCode[]

typedef struct tagCOUNTY_BYAREACODE

{

       WORD nCountyIdx;

}COUNTY_BYAREACODE;

按照区号大小的顺序,来排列区号。这里的值表示该区号在数据库_ccCounty[]中的具体位置。

例如:

第一个0x10 0x00—表示北京的区号(010)在数据库._ccCounty[]中第16个位置。

第二个 0x2d 0x00—表示广州的区号(020)在数据库._ccCounty[]中第45个位置。

 

4. __ccNumber[]

手机号码。

typedef struct tagNUMBER

{

       BYTE num[3];

       BYTE sum;

       WORD county;

}NUMBER;

例如:

0x2a,0xd6,0x13,0x02,0x10,0x00

0x2a,0xd6,0x13—开始号码(1300010),高字节在后,低字节在前,以long int表示;0x02—号码个数,即1300010,1300011;0x10,0x00—城市的索引,在_ccCounty中的位置。

 

0x2c,0xd6,0x13,0x08,0x22,0x01

0x2c,0xd6,0x13—开始号码(1300012);0x08—共8个号码(1300012—1300019);0x22,0x01—城市在_ccCounty中的位置。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IOT物联网小镇

赏点银子去植发

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值