Home · Compare · Code 128 vs Code 39:你应该使用哪种格式?
Code 128 vs Code 39:你应该使用哪种格式?
两种工业1D条码,用途相似但能力差异巨大。这里是实用解释。
Code 128和Code 39都是可变长度的1D条码,用于非零售应用:发货标签、库存标签、医院腕带、资产跟踪和内部序列号。它们不用于零售产品识别(那是UPC/EAN的领域)。
简短版本:Code 128是现代默认选择,几乎总是新系统的正确答案。Code 39是遗留选项,你仍然会在汽车零件、国防、图书馆和未更新的旧工业系统中遇到它。
Bottom line
对于任何新项目,使用Code 128 — 它密度更高、支持完整ASCII(包括小写和符号)并内置校验和。仅当与特别需要它的遗留系统集成时使用Code 39。
Code 128 vs Code 39: side-by-side
| Code 128 | Code 39 | |
|---|---|---|
| 字符集 | 完整ASCII(128字符,包括小写和符号) | 43字符(大写A-Z、0-9和 -. $/+%) |
| 数据密度 | 高 — 窄条和空格,相同数据缩小约30% | 较低 — 每个字符9条/空格宽 |
| 校验和 | 必需(mod 103) | 可选(mod 43) |
| 常见用途 | 发货(顺丰、京东物流、UPS、FedEx、USPS)、Amazon FNSKU、带AI的GS1-128、医疗腕带 | 汽车零件目录、国防(DoD)、图书馆、照片冲印票券 |
| 可变长度 | 是 | 是 |
| 智能手机可扫描 | 是(所有基于摄像头的扫描仪) | 是(所有基于摄像头的扫描仪) |
| 推出年份 | 1981年 | 1974年 |
| GS1标准化 | 是(作为带Application Identifier的GS1-128) | 否 |
如何一眼区分
视觉指标:Code 39在条码下方的可读文本中始终以星号(*)开始和结束。Code 128没有。此外,Code 39的条和空格看起来更均匀、更宽;Code 128的条和空格宽度变化很大,看起来更密集。如果可读文本包含小写字母或除 `-. $/+%` 之外的特殊字符,则肯定是Code 128 — Code 39无法编码这些。
为什么Code 128主导现代系统
三个原因。第一,密度:Code 128在30%+更少的物理空间中编码相同的数据,对小型发货标签和销售单位贴纸很重要。第二,字符集:Code 128处理小写字母、特殊字符和所有ASCII,而Code 39只支持大写。第三,GS1标准化:Code 128是GS1-128的基础,整合了Application Identifiers,如(01)用于GTIN、(10)用于批号、(17)用于到期日 — 供应链可追溯性的支柱。
Code 39存活的地方
Code 39在汽车零件目录中存活(每个代码是大写字母数字,适合Code 39字符集)、美国国防部物流(Code 39按军规强制要求)、一些图书馆编目系统、以及80-90年代建立的旧工业库存系统。如果与那些系统集成,使用Code 39。否则,使用Code 128。
FAQ
我如何知道一个代码是Code 128还是Code 39?
Code 39始终在条码下方的可读文本开头和结尾显示星号(*)。Code 128没有。此外:如果你看到小写字母或除 -. $/+% 之外的特殊字符,必定是Code 128 — Code 39无法编码它们。
Code 128和Code 39有什么区别?
Code 128支持完整的128字符ASCII集,密度更高(相同数据更小)。Code 39只支持43字符(大写),生成更宽、密度更低的代码。Code 128有强制校验和;Code 39的是可选的。Code 128是现代默认选择;Code 39主要存活于遗留系统中。
Code 39今天还在使用吗?
是的,但主要在遗留应用中:汽车零件目录、美国国防部物流、一些图书馆和旧工业库存系统。对于新项目,Code 128几乎总是正确选择。
Code 128仍被广泛使用?
Code 128是现代主导的1D条码。用于UPS、FedEx、USPS发货标签、每个Amazon FBA FNSKU标签、GS1-128供应链代码(带批号、到期日、序列的Application Identifier)、医院患者腕带和大多数现代资产跟踪部署。
Code 128比Code 39好吗?
对于新应用,是的 — Code 128更紧凑、支持更多字符(包括小写)并且是GS1-128供应链合规所必需。Code 39只在你被迫与需要它的系统集成时(一些军规和工业遗留)才「更好」。
Related generators
Generate the right format now
Now that you know which one you need — render a valid barcode in seconds. No signup, no watermark, valid GS1 check digit. Free for casual use; paid plans from $9/mo.