生活工具 · 实用查询

火车站代码

中国铁路三字码大全

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 63 次使用
本地查询 · 不联网 · 座车站
搜索 三字码(电报码)/ 拼音码 / 城市 / 站名
↑↓ 选择 · 回车确认 · 点结果卡上的代码即可复制
车站代码表browse by region · 点击车站查看完整代码
就绪 · 输入三字码、城市或站名即可查询
第一节

关于本工具

About

查票时对着手机屏幕上的三个字母发愣——「HZH」是哪个站?打开这个工具,输入或粘贴站名,它立刻反查对应的铁路三字码。覆盖全国已开通客运的所有车站,结果直接显示站名、拼音和三字码。查询在浏览器本地完成,站名数据随页面加载,不上传服务器,断网也能查。

使用场景

核对车票中转站

在 12306 买联程票,第一程到「锦州」站,第二程从「锦州南」站出发,中间只有 40 分钟。担心两个站不是同一个地方,拿着票根在地铁上查。输入「锦州」和「锦州南」的三字码,确认一个是 JZD 一个是 JNF,属于不同车站,果断改签第二程,避免跑错站赶不上车。

代购车票防输错

帮老家亲戚代买从「渭南」到「西安」的票,亲戚口音重,说「渭南」听起来像「魏南」。手动输入站名怕选错,先查「渭南」的三字码是 WNY,再查「西安」是 XAY。在购票软件里直接按代码搜,确保出发站和到达站完全匹配,避免买到「魏善庄」之类的无关车站。

规划跨省出差路线

从上海去安徽阜阳,高铁经过「阜阳西」和「阜阳」两个站。同事说「阜阳西」是新站,离市区远。用本工具查三字码:阜阳西是 FYF,阜阳是 FYH,确认是两个不同的客运站。对比两者到目的地的公交时间后,选择在「阜阳」站下车,省了半小时换乘。

识别同名不同站

买去「黄山」的票,发现 12306 里同时有「黄山」和「黄山北」。搜三字码:黄山是 HKH,黄山北是 HGH。一问才知道,「黄山」是老站,离景区近但车次少;「黄山北」是高铁站,车次多但需再坐大巴。根据到达时间和出行方式,选了黄山北站,用三字码精准锁定购票。

对比矩阵

维度本工具铁路 12306 官网纸质时刻表 / 人工查询
查询速度输入三字码即出结果,毫秒级需登录 + 多级菜单,秒级翻书或问人,分钟级
离线可用纯浏览器运行,断网也能查必须联网完全离线
数据范围覆盖全国所有车站三字码仅查车次时附带显示,不独立查询依赖版本,老旧车站常缺失
更新及时性随铁路调整同步更新实时同步铁路数据纸质版更新周期长(半年/一年)
使用门槛打开即用,无需注册需注册账号并登录需熟悉车站分布或携带手册
第二节

使用指南

Getting Started

使用步骤

  1. 1在输入框键入车站名称(如「北京」)或拼音首字母(如「bj」),下方列表实时过滤匹配的三字码与车站名
  2. 2点击任一结果行,该行的三字码自动复制到剪贴板,同时输入框清空并显示「已复制」提示
  3. 3切换输入框右侧的「按拼音」/「按首字母」筛选模式,列表排序与匹配规则随之更新
  4. 4点击列表顶部的「全部」标签收起已选结果,重新浏览完整车站列表

输入输出示例

输入输出说明
北京BJP常规:直辖市,用户最常查询的起点站之一,验证基本地名→三字码映射
上海SHH常规:另一大枢纽,与北京不同编码规则(上海为SHH而非SHA),展示非首字母缩写逻辑
广州南IZQ边界:含方位后缀(南/东/西/北)的车站,编码不包含方位字,需确认正确映射
西安XAY常规:省会城市,编码为XAY而非XAN,展示非拼音首字母组合
拉萨LSO边界:偏远地区车站,编码可能不直观(LSO而非LSA),验证数据完整性
株洲ZZQ易错:与郑州(ZZF)编码相似但不同,用户易混淆,需注意区分
天津TJP常规:直辖市,与北京(BJP)编码模式一致(城市拼音首字母+P),验证规律性
乌鲁木齐WAR边界:多字地名,编码为WAR而非WLMQ,展示非全拼缩写规则

常见错误对照

1.把站名当三字码输入

✗ 错误输入“北京”或“beijing”
✓ 修复BJP

三字码是车站的固定字母代号,不是拼音或中文名。输入中文或拼音不会匹配到任何结果。

2.混淆车站与城市的三字码

✗ 错误查“上海火车站”时输入“SHA”
✓ 修复SHH

SHA 是上海虹桥站(Shanghai Hongqiao)的代码,上海站(Shanghai)的代码是 SHH。城市名不等于站名,不同车站代码不同。

3.大小写混用或全小写

✗ 错误输入“bjp”或“Bjp”
✓ 修复BJP

三字码标准格式为全大写字母。多数查询工具不区分大小写,但部分系统或导出场景会因大小写不一致导致匹配失败。

4.输入已停用或更名的车站代码

✗ 错误查“中华门站”时输入“ZHM”
✓ 修复先确认车站当前运营状态,ZHM 已停用

部分车站因线路调整已停运或更名,旧代码不再有效。查询前应确认车站是否仍在运营。

5.把拼音首字母当三字码

✗ 错误查“广州南站”时输入“GZN”
✓ 修复IZQ

三字码由国铁统一分配,并非简单取拼音首字母。广州南站的代码是 IZQ,与拼音无关。

6.忽略站名中的方位词差异

✗ 错误查“杭州东站”时输入“HZH”
✓ 修复HGH

HZH 是杭州站(城站)的代码,杭州东站的代码是 HGH。方位词(东、西、南、北)对应不同车站,代码完全不同。

7.误用英文站名缩写

✗ 错误查“南京南站”时输入“NJS”
✓ 修复NKJ

NJS 是南京站(Nanjing)的代码,南京南站(Nanjing South)的代码是 NKJ。英文站名缩写不直接对应三字码。

第三节

工作原理

How It Works

核心公式

三字码 = 车站拼音首字母组合(无公式,为固定映射表)

变量说明

  • 车站名中国铁路客运站中文名称
  • 三字码对应车站的3位大写字母代码

示例

北京站 → 拼音 BeiJing Zhan → 取首字母 BJZ,实际映射为 BJP(北京站三字码)。输入“北京站”查询,返回三字码 BJP。

输入站名本地三字码映射表查询显示三字码显示车站全称本地三字码反向映射查询输入三字码
用户输入 本地处理 输出结果
第四节

开发者集成

For Developers

6 种主流语言实现,复制即用:

import requests # 查询火车站三字码 station_name = "北京" url = f"https://www.quanbao5.com/shenghuo/huochezhan-daima?q={station_name}" response = requests.get(url) if response.status_code == 200: # 实际解析需根据页面 HTML 结构提取,此处示意调用方式 print(f"查询 {station_name} 的三字码结果已返回") else: print("查询失败")
// 浏览器端示例:使用 fetch 查询火车站代码 const stationName = '上海'; const url = `https://www.quanbao5.com/shenghuo/huochezhan-daima?q=${encodeURIComponent(stationName)}`; fetch(url) .then(response => response.text()) .then(html => { // 解析 HTML 提取三字码(需根据页面结构实现) console.log(`已获取 ${stationName} 的查询结果页面`); }) .catch(err => console.error('请求失败:', err));
package main import ( "fmt" "io/ioutil" "net/http" "net/url" ) func main() { station := "广州" baseURL := "https://www.quanbao5.com/shenghuo/huochezhan-daima" params := url.Values{} params.Add("q", station) fullURL := baseURL + "?" + params.Encode() resp, err := http.Get(fullURL) if err != nil { fmt.Println("请求失败:", err) return } defer resp.Body.Close() body, _ := ioutil.ReadAll(resp.Body) fmt.Printf("查询 %s 返回页面长度: %d 字节\n", station, len(body)) }
#!/bin/bash # 使用 curl 查询火车站三字码 STATION="深圳" curl -s "https://www.quanbao5.com/shenghuo/huochezhan-daima?q=${STATION}" | \ grep -oP '(?<=<td>)[A-Z]{3}(?=</td>)' | head -1 || \ echo "未找到三字码"
import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; public class StationCodeQuery { public static void main(String[] args) throws Exception { String station = "杭州"; String url = "https://www.quanbao5.com/shenghuo/huochezhan-daima?q=" + URLEncoder.encode(station, StandardCharsets.UTF_8); HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .build(); HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString()); System.out.println("查询 " + station + " 返回状态码: " + response.statusCode()); } }
<?php $station = '成都'; $url = 'https://www.quanbao5.com/shenghuo/huochezhan-daima?q=' . urlencode($station); $html = @file_get_contents($url); if ($html === false) { echo "请求失败\n"; exit; } // 简单提取三字码(需根据实际页面结构调整正则) preg_match('/<td>([A-Z]{3})<\/td>/', $html, $matches); $code = $matches[1] ?? '未找到'; echo "{$station} 的三字码: {$code}\n";
第五节

常见问题

Q & A
这个三字码和12306上查到的车站编号是一回事吗?

不是一回事。12306的车站编号通常是6位数字(如北京站10001),而三字码是3位字母(如BJP)。三字码是铁路系统内部用于电报、票务清算等场景的简码,12306购票时不会直接显示。本工具只查三字码,不查6位数字编号。如果买票需要确认站名,建议对照车站中文名核对。

有些小站搜不到三字码,是不是工具数据不全?

不是数据不全。中国铁路三字码主要覆盖办理客运业务的火车站,以及部分编组站、货运站。一些乘降所、临时停靠点、已撤销的站可能没有分配三字码,或者码已停用但未公开。如果搜不到,可以先确认该站是否在12306能查到车次;12306有但这里没有,可以反馈补充;12306本身没有,那基本就没有三字码。

输入站名时要不要带‘站’字?带‘站’和不带‘站’结果一样吗?

建议不带‘站’字直接输站名主体,比如输‘北京南’而不是‘北京南站’。因为数据库里存的是标准站名,多数不带‘站’。如果输入带‘站’的完整名称,部分站可能会匹配不上(如‘杭州东站’与‘杭州东’)。若第一次没搜到,可以去掉‘站’字再试。模糊匹配功能会在后续版本加入。

同一个城市有多个火车站,三字码怎么区分?比如北京有北京站、北京西、北京南?

每个车站有唯一的三字码,互不重复。北京站是BJP,北京西是BXP,北京南是VNP,北京北是VAP,北京朝阳是IFP。输城市名(如‘北京’)会列出该城市所有带客运业务的车站列表,再点具体站名就能看到对应的三字码。如果只输一个字或模糊字,建议尽量精确到站名全称。

这个码只能在浏览器里查吗?能不能下载到手机离线用?

本工具是纯前端实现,所有数据打包在页面里,首次加载后后续查询不需要联网,也不会上传任何输入内容。但页面本身是网页,不能像App那样独立离线运行。如果想离线查,可以在有网时把页面添加到手机桌面(PWA方式),或者截图保存常用站的三字码。没有服务器交互,隐私安全。

三字码有重复的吗?会不会两个站共用一个码?

不会。三字码是铁路系统内全局唯一的标识符,每个码只对应一个车站(当前运营中的)。历史上曾有过撤销车站后码被回收重新分配给新站的情况,但同一时段内不会重复。如果发现两个不同站名显示同一个三字码,大概率是其中一个站名已变更或合并,建议以12306官方信息为准。

为什么有些站的码是三个字母,有些看起来像数字?

三字码全部由英文字母组成(A-Z),不会出现数字。如果看到类似‘012’这样的组合,那可能是其他编号系统(如电报码中的数字代码或车站编号)。本工具只收录纯字母的三字码。如果输入后返回空结果,可以先检查是否误输了数字或特殊符号。

查出来的三字码在买票、退票、改签时能用吗?

三字码主要用于铁路内部系统(如调度、清算、电报)以及部分第三方开发者的接口调用。普通乘客在12306或车站窗口买票、退票、改签时,不需要使用三字码,直接报站名即可。如果是在开发票务相关软件或对接铁路接口,三字码是必填字段,本工具可作为查询参考。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭