Algorithm TNT.com追踪号码使用什么校验和(如果有)?
我正在写一些软件来识别追踪号码(就像谷歌在搜索联邦快递或UPS号码时识别它们一样)。大多数快递员使用一个系统,比如“加权平均mod系统”,可以用来识别一个号码是否是有效的追踪号码。有人知道TNT托运编号是否使用了这种系统吗?如果是,它是什么?我已经请求TNT的支持,而代表告诉我他们不。。。但我想再核实一下。据我所知,没有。对不起 我想你是在验证输入的追踪号码以确保输入正确Algorithm TNT.com追踪号码使用什么校验和(如果有)?,algorithm,validation,checksum,Algorithm,Validation,Checksum,我正在写一些软件来识别追踪号码(就像谷歌在搜索联邦快递或UPS号码时识别它们一样)。大多数快递员使用一个系统,比如“加权平均mod系统”,可以用来识别一个号码是否是有效的追踪号码。有人知道TNT托运编号是否使用了这种系统吗?如果是,它是什么?我已经请求TNT的支持,而代表告诉我他们不。。。但我想再核实一下。据我所知,没有。对不起 我想你是在验证输入的追踪号码以确保输入正确 --Kevin Fairchild好的,你问起这个问题已经三个月了,但我在写一个类似的软件时偶然发现了这个问题。据我们所知,
--Kevin Fairchild好的,你问起这个问题已经三个月了,但我在写一个类似的软件时偶然发现了这个问题。据我们所知,TNT使用追踪号码系统。这意味着他们的号码将是AA型。最后两个字母对应ISO/IATA国家代码。话虽如此,TNT使用WW,我们认为它必须代表全世界。这不是一个很好的答案,至少它不是关于校验和或算法,但它可能有用吗?希望有帮助
Willow我相信有一个校验位/校验和位,可能是MOD10的衍生物,但不知道它是什么算法,被TNT称为第9位。 很高兴知道
我所知道的12345678校验位是5,22345678校验位是8。这实际上是MOD 11 VB.net,我写的如下:
Dim number As String = TextBox1.Text
Dim A As Integer
Dim B As Integer
Dim C As Integer
Dim check_digit As Integer
A = (CInt(Mid(number, 1, 1)) * 8) + (CInt(Mid(number, 2, 1)) * 6) + (CInt(Mid(number, 3, 1)) * 4) + (CInt(Mid(number, 4, 1)) * 2) + (CInt(Mid(number, 5, 1)) * 3) + (CInt(Mid(number, 6, 1)) * 5) + (CInt(Mid(number, 7, 1)) * 9) + (CInt(Mid(number, 8, 1)) * 7)
B = ((A \ 11) * 11)
C = A - B
If C = 0 Then
check_digit = 5
End If
If C = 1 Then
check_digit = 0
End If
If C <> 0 And C <> 1 Then
check_digit = 11 - C
End If
MsgBox(number & check_digit)
尺寸编号为String=TextBox1.Text
将A变暗为整数
作为整数的Dim B
作为整数的Dim C
作为整数的Dim check_数字
A=(CInt(Mid,1,1))*8+(CInt(Mid,2,1))*6+(CInt(Mid,3,1))*4+(CInt(Mid,4,1))*2+(CInt(Mid,5,1))*3+(CInt(Mid,6,1))*5+(CInt(Mid,7,1))*9+(CInt(Mid,8,1))*7)
B=((A\11)*11)
C=A-B
如果C=0,则
检查数字=5
如果结束
如果C=1,则
检查数字=0
如果结束
如果是c0和c1,那么
检查数字=11-C
如果结束
MsgBox(数字和校验位)
它实际上是MOD 11 VB.net,我写的如下: