我想把一个邮政编码转换为大致位于该邮政编码中心的地址。

问题描述 投票:1回答:1

我有一个用户提供的地址数据库。在某些情况下,用户只输入了一个邮编,我们一度认为这个邮编足以满足我们的目的。现在我们知道邮政编码并不能解决问题,我们需要一个实际的地址。

所以,我们希望将邮政编码转换为一个足够接近该地点的地址,然后让用户知道我们做了什么,这样他们就可以在需要的时候去改变这些地址。

有谁知道有什么东西可以提供我想要的数据吗?

street-address
1个回答
3
投票

我曾经是一个开发人员,在 SmartyStreets 我对街道地址有很多经验)。

不幸的是,邮政编码不能转换成地址。

美国的地址是由一个11位数字(12位为校验码)来识别的(几乎是唯一的),称为递送点条码。ZIP码通常是这个代码的前5位。其余的6位数字提供了更多的精细度来确定地址。请注意,根据USPS的地址分配系统,这并不能从地理上准确定位一个地址,而只能从逻辑上定位。他们根据最合理的管理和递送方式来分配邮政编码和地址)。如果没有这些其他数字,准确的插值是非常非常不可能的。

试图从邮政编码中解析一个地址就像试图将100px的位图缩放成100,000px的图像一样,取决于邮政编码。

抛开技术上的不可行性不谈,我建议不要找到一个地址,然后要求用户去修正它。从用户体验和DBA的角度来看,为什么不简单地要求用户填写正确的地址呢?如果你试图猜测地址,用户会感到困惑,而数据库管理员很可能会失去跟踪哪些地址是假的,哪些地址是被更正的。换句话说,你的数据会对你撒谎。

你可能宁愿拥有不完整的数据而知道它,也不愿拥有不正确的数据而 知道它。

即使用户不填写地址,你也可以,用。再有 合理确定,假设从ZIP码中找出一个城市和州。SmartyStreets有一个API可以实现这一点。至少这样一来,你会有一个近似的坐标和城市州,而不是完全错误的地址数据。猜对的几率是几万分之一。

© www.soinside.com 2019 - 2024. All rights reserved.