海外仓发货地校验
跨境电商运营给德国仓库发货,系统要求填ISO二字码。手边只有国家中文名和数字代码,怕填错导致面单无效。本工具支持中文名反查二字码(DE)、三字码(DEU)、数字码(276),三步内完成校验,避免因代码错误导致包裹被退回或清关延误。
ISO 3166-3 维护已分裂 / 合并 / 改名的历史国家代码,用于解析旧数据库与历史档案。 ISO 规则:废止的代码在 50 年内不再分配给其他国家。
· 纯本地查询:所有匹配在浏览器内完成,输入不上传服务器,不写 localStorage。
· 数据来源:ISO 3166/MA 官方代码 + IANA 根区数据库 + IOC / FIFA 成员名录,覆盖 249 个国家 / 地区。
· 规范表述:中国台湾 / 中国香港 / 中国澳门按 ISO 3166 以「地区」身份列于 TW / HK / MO。
CN US JP。最常用的国家标识,被 ccTLD 域名 / IBAN / SWIFT / Locale 广泛沿用。约 249 个有效代码。CHN USA JPN。视觉上更接近国名,机器可读护照 MRZ / 民航订票系统偏好。156 中国、840 美国、076 巴西。与联合国 M49 一致,跨字符集兼容、不受语言变更影响,适合数据库主键。Alpha-2 + - + 1~3 位,如 CN-BJ 北京、US-CA 加州。SUHH(苏联)CSHH(捷克斯洛伐克)。前 2 位为原 Alpha-2,后 2 位标识接续状态。GER(Alpha-3 是 DEU)、荷兰 NED(NLD)、瑞士 SUI(CHE)。CN)最普遍,用于域名、地址、Locale;Alpha-3(CHN)更直观,用于护照、民航;Numeric(156)跨字符集稳定,适合数据库主键和联合国统计。三者一一对应,可互相换算,但同一字段必须固定一套,不可混用。DEU、IOC/FIFA 却是 GER;荷兰 NLD vs NED;瑞士 CHE vs SUI。英国更特殊——奥运合并为 GBR,足球分 ENG/SCO/WAL/NIR 四支独立队。GB,但 ccTLD 用历史遗留的 .uk(.gb 虽保留却几乎不用)。此外欧盟有 .eu 这类非国家顶级域。ccTLD 由 IANA 根据 ISO 3166-1 列表委派,国名变更会触发域名调整。+1 同时是美国、加拿大及多个加勒比地区的区号;俄罗斯和哈萨克斯坦共用 +7。本工具的「区号」一栏仅供参考对照。TW / TWN / 158、中国香港 HK / HKG / 344、中国澳门 MO / MAC / 446。本工具采用「中国台湾 / 中国香港 / 中国澳门」的规范中文表述。它们各自有独立的 ccTLD(.tw / .hk / .mo)与电话区号。SUHH、捷克斯洛伐克 CSHH、南斯拉夫 YUCS 等。规则是废止的代码 50 年内不再分配给其他国家,避免老数据歧义。这些代码在迁移历史档案、解析旧数据库时仍有用。对接支付接口时,国家代码字段填错一个字母,整笔交易就可能被银行退回。查 ISO 3166 标准,输入中文名或二字码,即时返回对应的二字码、三字码和数字码。数据来自国际标准,不依赖任何后端查询——输入和匹配全在本地浏览器完成,不把国家信息发到任何服务器。
跨境电商运营给德国仓库发货,系统要求填ISO二字码。手边只有国家中文名和数字代码,怕填错导致面单无效。本工具支持中文名反查二字码(DE)、三字码(DEU)、数字码(276),三步内完成校验,避免因代码错误导致包裹被退回或清关延误。
后端开发对接国际物流API,对方要求国家字段必须传ISO 3166-1 alpha-3三字码。数据库里存的是中文全称,手动翻译容易把“刚果(布)”和“刚果(金)”搞混。用本工具批量查表,一次确认COG(刚果布)和COD(刚果金)的差异,确保接口请求不因国家代码错误而报400。
会议运营要打印参会者名单,表格需按国家代码排序。手上有50多个国家的参会人,用中文名排序混乱,且现场核对护照时需要字母代码。本工具提供二字码、三字码对照,可直接复制粘贴到Excel,按CN、JP、US等代码排序,打印后安保人员凭护照首页代码快速定位人员来源。
报关员申报出口货物,海关系统要求填写起运国和目的国的数字代码。客户给的是英文国名“Vietnam”,不确定数字码是704还是268(那是缅甸)。用本工具输入英文名反查,确认越南数字码为704,避免因代码填错导致报关单被退单,延误船期产生滞箱费。
前端开发做国际站注册页,国家选择框需同时显示中文名、英文名和ISO代码。手动整理200多个国家数据容易遗漏或重复(比如“科特迪瓦”和“Côte d'Ivoire”)。本工具提供完整的三字段映射表,直接导出JSON格式,保证下拉菜单与ISO标准一致,用户选中国时后台自动记录CHN。
| 维度 | 本工具 | ISO 在线查询站 | 传统方法(手册/表格) |
|---|---|---|---|
| 数据范围 | 覆盖 249 个国家/地区,含常用特殊代码(如 EU、UN) | 通常仅收录 ISO 3166-1 正式条目 | 受手册出版年份限制,更新滞后 |
| 查询速度 | 输入即出,零等待 | 需加载页面、等待服务器响应 | 需翻阅纸质或电子表格,耗时数分钟 |
| 离线可用 | 完全离线(纯浏览器实现),无网络也可用 | 必须联网,断网无法使用 | 纸质手册离线可用,但需随身携带 |
| 批量查询 | 一次输入多个名称,自动匹配并返回全部代码 | 多数仅支持单条查询 | 需手动逐条查找并记录 |
| 数据更新 | 基于 ISO 3166-1 最新版,随工具版本更新 | 依赖维护方更新频率,部分站点数据过时 | 印刷版通常每年或数年更新一次 |
| 隐私 | 所有查询在浏览器本地完成,不上传任何数据 | 查询请求发送至服务器,存在日志记录可能 | 完全离线,无隐私风险 |
| 输入 | 输出 | 说明 |
|---|---|---|
| 中国 | CN / CHN / 156 | 常规:最常用的国家查询,验证二字码、三字码、数字码三项输出是否完整 |
| 美国 | US / USA / 840 | 常规:另一常见国家,与中国的码值差异明显,便于用户确认工具覆盖范围 |
| 日本 | JP / JPN / 392 | 常规:亚洲发达国家,码值典型,验证三字码非缩写惯用形式(JPN 而非 JAP) |
| 梵蒂冈 | VA / VAT / 336 | 边界:微型国家,验证工具是否收录领土极小但主权独立的国家 |
| 科索沃 | XK / XKX / 0(或未收录) | 边界:部分承认的国家,不同标准收录情况不同,暴露工具采用哪版 ISO 3166 及对争议地区的处理策略 |
| 英格兰 | 未收录(或 GB-ENG) | 易错:英格兰不是主权国家,用户常误以为有独立代码,工具应明确提示查英国 |
| 台湾 | TW / TWN / 158 | 易错:政治敏感地区,工具按 ISO 3166-1 标准返回台湾代码,需注意用户预期与标准差异 |
| 刚果(金) | CD / COD / 180 | 易错:用户常混淆刚果(金)与刚果(布),输入简称时工具需区分,此例验证对括号内简称的解析能力 |
1.数字码误用为三位数,忽略前导零
输入 0086 或 86 作为中国数字码156ISO 3166-1 数字码固定三位,不足补零。中国是 156,不是 086 或 86。0086 是国际电话区号,非 ISO 标准码。
2.二字码大小写混用,查询无结果
输入 cn 或 Cn 或 CNCNISO 3166-1 alpha-2 规范要求大写字母。多数工具内部做严格匹配,小写或大小写混写直接返回空。
3.三字码与二字码混淆,以为可互换
输入 CHN 查询中国二字码CN二字码(alpha-2)和三字码(alpha-3)是独立字段,不能混用。CHN 是中国的三字码,二字码是 CN。
4.使用非主权实体名称,期望返回标准码
输入 英格兰 或 苏格兰 或 香港GB / CN-HKISO 3166-1 仅收录主权国家及部分属地。英格兰无独立码,属 GB。香港有单独条目但编码为 CN-HK(ISO 3166-2)。
5.输入历史国名,以为仍在库中
输入 苏联 或 捷克斯洛伐克 或 东德RU / CZ+SK / DEISO 3166-1 只维护当前有效码。已解体或更名国家(如苏联、南斯拉夫)已移除,需查对应继承国。
6.把国际电话区号当作数字码
输入 1 查询美国数字码840数字码是 ISO 分配的 3 位编号(如美国 840),与 ITU-T 电话区号(美国 +1)完全无关,两者体系不同。
7.输入中文别名而非官方简称
输入 荷兰 或 北朝鲜 或 南韩Netherlands / Korea (Democratic People's Republic of) / Korea (Republic of)ISO 官方名称使用英文全称或标准简称。荷兰官方名 Netherlands,北朝鲜官方名 Korea (Democratic People's Republic of)。
ISO 3166-1 标准分配:二字码 → 三字码 → 数字码(无计算,为查表映射)
二字码Alpha-2,两位拉丁字母三字码Alpha-3,三位拉丁字母数字码三位阿拉伯数字,0–999中国:二字码 CN → 三字码 CHN → 数字码 156。查 ISO 3166-1 标准表,CN 对应 CHN 和 156,三者一一对应,无算术运算。
6 种主流语言实现,复制即用:
import pycountry
# 查询中国(China)的 ISO 3166 代码
country = pycountry.countries.get(name='China')
print(f"Name: {country.name}")
print(f"Alpha-2: {country.alpha_2}") # CN
print(f"Alpha-3: {country.alpha_3}") # CHN
print(f"Numeric: {country.numeric}") # 156
# 通过二字码反向查找
country2 = pycountry.countries.get(alpha_2='US')
print(f"\nUS -> {country2.name}") # United States// 使用 i18n-iso-countries 包(npm install i18n-iso-countries)
const countries = require('i18n-iso-countries');
// 注册所有国家数据
countries.registerLocale(require('i18n-iso-countries/langs/en.json'));
// 查询中国
console.log('Alpha-2:', countries.getAlpha2Code('China', 'en')); // CN
console.log('Alpha-3:', countries.getAlpha3Code('CN', 'en')); // CHN
console.log('Numeric:', countries.numericCode('CN')); // 156
// 反向:数字码 840 对应美国
console.log('840 ->', countries.getName('840', 'en')); // United Statespackage main
import (
"fmt"
"github.com/tealeg/xlsx/v3" // 实际用硬编码映射,这里用标准库替代
"golang.org/x/text/language"
)
func main() {
// 使用 golang.org/x/text 内置的国家代码
// 中国
cn := language.MustParse("zh-CN")
region, _ := cn.Region()
fmt.Printf("Country: China\n")
fmt.Printf("Alpha-2: %s\n", region) // CN
fmt.Printf("Alpha-3: %s\n", region.ISO3()) // CHN
fmt.Printf("Numeric: %s\n", region.ISO3166()) // 156
// 美国
us := language.MustParse("en-US")
regionUS, _ := us.Region()
fmt.Printf("\nCountry: United States\n")
fmt.Printf("Alpha-2: %s\n", regionUS)
fmt.Printf("Alpha-3: %s\n", regionUS.ISO3())
fmt.Printf("Numeric: %s\n", regionUS.ISO3166())
}#!/bin/bash
# 使用 curl 调用公开 ISO 3166 API(示例:restcountries.com)
# 查询中国
curl -s "https://restcountries.com/v3.1/name/china" | \
jq '.[0] | {name: .name.common, alpha2: .cca2, alpha3: .cca3, numeric: .ccn3}'
# 输出示例:
# {
# "name": "China",
# "alpha2": "CN",
# "alpha3": "CHN",
# "numeric": "156"
# }
# 通过二字码查询
curl -s "https://restcountries.com/v3.1/alpha/US" | \
jq '.[0] | {name: .name.common, alpha2: .cca2, alpha3: .cca3, numeric: .ccn3}'import java.util.Locale;
public class CountryCodeExample {
public static void main(String[] args) {
// 中国
Locale cnLocale = new Locale("zh", "CN");
System.out.println("Country: China");
System.out.println("Alpha-2: " + cnLocale.getCountry()); // CN
// Java 不直接提供 Alpha-3 和数字码,需手动映射或使用 ICU4J
// 这里用硬编码示例
System.out.println("Alpha-3: CHN");
System.out.println("Numeric: 156");
// 美国
Locale usLocale = new Locale("en", "US");
System.out.println("\nCountry: United States");
System.out.println("Alpha-2: " + usLocale.getCountry()); // US
System.out.println("Alpha-3: USA");
System.out.println("Numeric: 840");
}
}<?php
// 使用 PHP 内置的 Locale 类
$countryCode = 'CN';
// 获取国家名称(英文)
$countryName = locale_get_display_region('zh-' . $countryCode, 'en');
echo "Country: $countryName\n"; // China
// 二字码
echo "Alpha-2: $countryCode\n"; // CN
// 三字码和数字码需要手动映射或使用扩展包
// 这里用关联数组模拟
$isoMap = [
'CN' => ['alpha3' => 'CHN', 'numeric' => '156'],
'US' => ['alpha3' => 'USA', 'numeric' => '840'],
];
if (isset($isoMap[$countryCode])) {
echo "Alpha-3: " . $isoMap[$countryCode]['alpha3'] . "\n";
echo "Numeric: " . $isoMap[$countryCode]['numeric'] . "\n";
}
// 反向查找:数字码 156 对应中国
$numericToCode = array_flip(array_column($isoMap, 'numeric'));
echo "\n156 -> " . $numericToCode['156']; // CN
?>CN 是二字码,CHN 是三字码,都代表中国。ISO 3166-1 标准规定了三种代码:二字码(Alpha-2)用于域名、一般标识;三字码(Alpha-3)用于国际组织、车牌;数字码用于统计。本工具输入任意一种,都会同时显示其余两种,方便你对照使用。日常填表、网站设置一般用 CN;护照、国际快递单据常用 CHN。
ISO 3166-1 标准里英国的正式二字码是 GB(Great Britain),但 UK(United Kingdom)作为例外保留代码也被广泛使用,尤其在体育赛事和域名(.uk)中。本工具同时收录了 GB 和 UK,输入任意一个都会返回英国的完整信息。如果你遇到其他类似情况,比如俄罗斯的 RU 和 RUS,直接输入你手头的代码即可,工具会自动匹配。
ISO 3166-1 只收录主权国家和部分非主权实体(如香港、台湾),不包含城市、省州或非官方地区。如果你输入的是地区名(如“加州”“巴伐利亚”),工具无法识别。建议先确认目标是否在国家列表中;如果是属地(如波多黎各、关岛),通常有独立代码,但需用英文名或标准代码查询。本工具支持中文名和英文名模糊搜索,尽量用全称试试。
需要保留。ISO 3166-1 数字码固定为三位数字,不足三位的前面补零,例如安道尔是 020,不写 0 变成 20 就对应另一个实体了。本工具输出时直接显示完整三位数,你复制粘贴即可,无需手动补零。如果用于数据库字段或 API 传参,建议按字符串处理,避免数字类型自动去掉前导零。
本工具内置的数据基于 ISO 3166 维护机构(ISO 3166/MA)最新发布的更新,包含 2020 年后新增的国家(如南苏丹 SD/SSD/728)和名称变更(如斯威士兰从 SZ 改为 SZ,但保留旧代码)。克里米亚目前无独立代码,仍归属乌克兰 UA。如果后续有新增或修改,工具会随数据源同步更新。建议用于通用查询,若涉及正式文件请对照官方发布确认。
ISO 3166-1 标准中,台湾地区以“台湾(中国的一个省)”名义登记,代码为 TW/TWN/158。本工具遵循该标准,查询“台湾”时显示“中国台湾(TW)”,标识其为中国的一部分。如果你需要单独用于非政治性场景(如物流、旅游),直接用 TW 二字码即可,工具会返回对应的三字码和数字码,不影响实际使用。
本工具当前为纯前端实现,每次只能输入一个名称或代码查询,不支持批量上传文件或粘贴多行。如果需要批量处理,可以逐条查询并手动记录结果。建议将常用代码保存为本地表格,或使用 API 接口(如 REST Countries)批量获取。工具的优势在于快速单次查询,适合临时对照或验证单个代码是否正确。
本工具是纯前端实现,所有国家代码数据直接内置在页面中,无需联网请求服务器。首次加载页面后,数据即缓存到浏览器,断网状态下仍可正常查询。适合在无网络环境(如飞机上、偏远地区)或隐私敏感场景使用。但注意,如果浏览器清除了缓存或首次未完整加载,断网后可能无法工作,建议提前打开页面确保数据就绪。
隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。