• 您的位置我爱Aspx >> 综合资讯 >> 纯真IP数据库格式详解
  • 纯真IP数据库格式详解

  • 作者:yezi  来源:yezi blog  日期:2007-8-1 22:44:28  关键字:数据库,数据
  • 图9. 文件详细结构

    现在一切都清楚了是不是?也许还有一点你不清楚,QQWry.dat的版本信息存在哪里呢? 答案是:最后一条IP记录实际上就是版本信息,最后一条记录显示出来就是这样:255.255.255.0 255.255.255.255 纯真网络 2004年6月25日IP数据。OK,到现在你应该全部清楚了。

    Demo

    下一步:我给出一个读取IP记录的程序片断,此片断摘录自LumaQQ源文件edu.tsinghua.lumaqq.IPSeeker.java,如果你有兴趣,可以下载源代码详细看看。 /**

    * 给定一个ip国家地区记录的偏移,返回一个IPLocation结构

    * @param offset 国家记录的起始偏移

    * @return IPLocation对象

    */

    private IPLocation getIPLocation(long offset) {

    try {

    // 跳过4字节ip

    ipFile.seek(offset + 4);

    // 读取第一个字节判断是否标志字节

    byte b = ipFile.readByte();

    if(b == REDIRECT_MODE_1) {

    // 读取国家偏移

    long countryOffset = readLong3();

    // 跳转至偏移处

    ipFile.seek(countryOffset);

    // 再检查一次标志字节,因为这个时候这个地方仍然可能是个重定向

    b = ipFile.readByte();

    if(b == REDIRECT_MODE_2) {

    loc.country = readString(readLong3());

    ipFile.seek(countryOffset + 4);

    我对这篇文章有话说?
  • 广告位招租,广告代号:content_468_15
  • 上一篇:发放gmail邀请,需要的回复一下
    下一篇:不习惯的时候就是成长的时候