tmpString = "I8X2E58AZ7"
EncryptTimes = CLng(val("&h" & Left(tmpString, 1))) Mod 5 + 2 //是不是就返回2,val("&h" & Left(tmpString, 1))返回的是什么值啊?是&hI吗?

解决方案 »

  1.   

    我的机子里没有vb,因为没学过vb,现在要把这个算法改成java,所以
      

  2.   

    直接报错,字符 "&hI" 无法转化为数值。
      

  3.   

    我想,要么报错(&HI不是16进制数),要么就是2(如果val(&HI)不报错的话就是0)
      

  4.   

    EncryptTimes = CLng(val("&h" & Left(tmpString, 1))) Mod 5 + 2  '返回2
    val("&h" & Left(tmpString, 1)) '返回0
    不明白你要取什么?VAL()是将数字字符串转换为数字..
    字符当然是返回为0了..