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