什么(如果有的话)校验和用于TNT.com跟踪号码?

时间:2008-09-11 16:36:13

标签: algorithm validation checksum

我正在编写一些软件来识别跟踪号码(就像Google在您搜索它们时识别FedEx或UPS号码一样)。大多数信使使用系统,例如“加权平均模式系统”,其可用于识别数字是否是有效的跟踪号。有没有人知道TNT寄售号码是否使用这样的系统,如果是,它是什么?我已经向TNT提出了支持,而且代表告诉我他们没有...但我想再次检查。

4 个答案:

答案 0 :(得分:2)

好的,所以这是你问过的三个月,但我偶然发现了这一点,因为我正在写一个类似的软件。据我们所知,TNT使用S10跟踪号码系统。这意味着他们的数字将是AA ######### AA类型。最后两个字母对应ISO / IATA国家代码。说TNT使用我们认为必须代表全球的WW。这不是一个答案,至少它不是关于校验和或算法,但它可能有用吗?希望有所帮助

杨柳

答案 1 :(得分:0)

据我所知,没有一个。遗憾。

我认为你试图验证输入的跟踪号码以确保输入正确吗?

- Kevin Fairchild

答案 2 :(得分:0)

我相信有一个校验位/校验和数字,可能是MOD10的衍生物,但不知道它是什么算法,被TNT称为第9位。 很高兴知道???

我所知道的全部12345678校验位是5和22345678校验位是8。

答案 3 :(得分:0)

实际上是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)
相关问题