接了笔生意,是要做一份网上调查。
但是对方要求只有上海地区的信息才作数,怎么才能根据取得的IP地址来判断用户的所在地呢?
特急!!!请大家帮忙啊!!!

解决方案 »

  1.   

    搜集一个字典,这一步是必须的,如果不道德点,就是把别人写好的软件中的字典导入你的程序中,我刚学编程时就这么弄过(好象是一个很著名的查IP软件,叫w什么y或w什么r,当时这个软件把一个别dbf文件的扩展名改成了dll)
    现在不知道有没有专门的Web Service提供这种查询,如果有的话,那么可以订阅这个Web Serveces,我听说上海目前有通过营业执照的企业代码查询企业注册信息的Web Services,不知真假.
      

  2.   

    IP库至少会实现三个字段:[起始IP],[结束PI],[所属区域]
    低效的处理方式可以在得到一个IP地址后,遍历一个IP库,然后返回>=[起始IP]并且<[结束PI]的记录,并判断[所属区域]是不是属于上海
    高级点的,可以把IP地址的"字符串表示"定义成一个类型,实现比较函数,然后对IP库的缓存进行排序,来快速查找区域