地址标准化算法

地名作为最常用的社会公共信息,不仅与人们的日常生活息息相关,而且是政府行政行为、经济建设不可缺少的基础信息资源。在国家信息化体系中,地名是不可或缺的重要节点和桥梁,在信息传递中发挥着重要作用。随着城市化进程的日益加快,地名管理工作面临许多新的形势和问题。研究与解决智慧城市背景下的地名标准化、数字化问题,尽快建立高起点、高质量、高效率的城市标准地名地址信息数据库,最终实现地名数字化管理,有利于提高地名信息资源的利用率和社会经济效益,为知识经济时代创造新的增长点。
  
资源下载地址 https://download.csdn.net/download/u011024436/89035851

Addresstool业务地址关联标准地址

        AddressTool ss = new AddressTool();  // 配置数据写入内存
        DataTable data = new DataTable();
        HashMap<String,String> address6 = new HashMap<>();
        address6.put("province","东北省");
        address6.put("city","花果山市");
        address6.put("county","水帘洞区");
        address6.put("town","猴王街道");
        address6.put("community","中前社区");
        address6.put("aoi","秦淮绿洲");
        address6.put("alias_aois","南京乾程塑胶模具");
        address6.put("sub_aoi","北苑");
        address6.put("road","宏运大道");
        address6.put("road_no","2299");
        address6.put("alias_roads","天地大道|金山大道:9|花果山大道:99");  // 道路别名
        address6.put("building","9");
        address6.put("unit","6");
        address6.put("room","1001");
        address6.put("id","777");
        data.addAddressDic(address6);

        // 标准地址库修复,比如用户只有户室级地址,此方法为用户补充楼栋级和aoi级地址,当然,如果用户有自己已经标准化好的地址库,可以省略此方法
        data.addressFix();
        // 将加工好的地址库写入到addresstool中
        data.initData(ss);

        // 万事俱备,我们可以进行地址关联啦
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿洲"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿舟"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号北苑9栋"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿洲北苑9栋"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿洲北苑9栋6单元1001室"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿洲北苑9-6-1001"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道中前社区宏运大道2299号秦淮绿舟北苑9-6-1001"));
        System.out.println(ss.getStdAddress("东北省花果山市水帘洞区猴王街道花果山大道99号秦淮绿舟北苑9-6-1001"));
        System.out.println(ss.getStdAddress("花果山大道99号秦淮绿洲北苑9-6-1001"));
        System.out.println(ss.getStdAddress("花果山大道秦淮绿洲北苑9-6-1001"));
        System.out.println(ss.getStdAddress("花果山大道秦淮绿洲9-6-1001"));

        System.out.println("写入文件");
        AddressFile addfile = new AddressFile();
        addfile.writeAddressFile(ss,"D:\\filepath\\test\\","address.addr");
        System.out.println("写入文件结束");

在这里插入图片描述

将标准地址生成**.addr文件

        System.out.println("写入文件");
        AddressFile addfile = new AddressFile();
        addfile.writeAddressFile(ss,"D:\\filepath\\test\\","address.addr");
        System.out.println("写入文件结束");

通过**.addr加载标准地址数据

AddressFile addfile = new AddressFile();
        addfile.loadFromAddressFile(ss,"D:\\","address.addr");

注意:由于地址数据保密级别高,生成**.addr文件和加载文件都依赖license授权码,同一个授权码生成的文件需要相同的授权码才能解析加载(不同授权码之间生成的**.addr文件无法相互解析)

java资源下载

https://download.csdn.net/download/u011024436/89035851

源码学习
https://gitee.com/addresstool/address

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

addresstool

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值