江湖救急 pb代码转成java代码
string ls_bank
string ls_Bank_Id
string ls_header120,ls_Body100,ls_check60,ls_tail232
Integer li_herder[1 to 40]
Integer li_Body10_10[1 to 10,1 to 10]
Integer li_check6_10[1 to 6,1 to 10],li_check_6_10[1 to 6,1 to 10]
Integer i,j,k,temp_i,temp_j
Int li_Body34[1 to 34]
string ls_p
ls_header120=mid(as_password,1,120)
ls_Body100 =mid(as_password,121,100)
ls_check60 =mid(as_password,221,60)
ls_tail232 =mid(as_password,281,232)
for i=1 to 40
li_herder[i]=Integer(mid(ls_header120,i*3 - 2,3))
if i<=34 then
li_Body34[i]=Integer(mid(ls_Body100,i*3 - 2,3))
li_Body34[i]=li_Body34[i] - li_herder[i]
end if
next
li_Body34[34]=48
for i=1 to 10
for j=1 to 10
li_Body10_10[i,j] = Integer(mid(ls_Body100,(i -1)*10+j,1))
next
next
for i=1 to 6 //加密矩阵的方式: - | \ / N Z
for j=1 to 10
li_check6_10[i,j] = mod(Integer(mid(ls_check60,(i -1)*10+j,1)) ,10)
next
next
//-----------------------------------------------------------------------------------
for i=1 to 10
for k=1 to 6
li_check_6_10[K,i]=0
Next
Next
for i=1 to 10
for j=1 to 10
ls_p=ls_p+String(li_Body10_10[j,i])/////////
for k=1 to 6
Choose Case k
case 1 // -
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[i,j]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
case 2 // |
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[j,i]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
Case 3 // \
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[j,mod(i+j -1,10)+1]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
Case 4 // /
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[j,mod(10 - j +i,10)+1]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
Case 5 // N
temp_j = mod(i + mod(j+1,2)- 1 ,10) +1
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[j,temp_j]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
Case 6 // Z
temp_j = mod(10 + i - mod(j+1,2)- 1 ,10) +1
li_check_6_10[K,i] =li_check_6_10[K,i]+li_Body10_10[j,temp_j]
li_check_6_10[K,i] = mod(li_check_6_10[K,i],10)
End Choose
next
ls_p=left(ls_p+String(li_Body10_10[j,i]),12)/////////
next
Next
for i=1 to 6
for j=1 to 10
if li_check6_10[i,j]<>li_check_6_10[i,j] then
ls_p='abc1234567'
End if
next
next
//-----------------------------------------------------------------------------------
gs_Bank_Id = ProfileString( gs_Ini_File, "Common", "bank", "")
ls_Bank_Id=left(gs_Bank_Id,20)
li_herder[40]=li_herder[40]/10
//messageBox('',char(li_Body34[1]) + char(li_Body34[2]) )
//messageBox('',char(li_Body34[3]) + char(li_Body34[4]) )
//messageBox('',char(li_Body34[5]) + char(li_Body34[6]) )
ls_bank = ''
for i=1 to len(gs_Bank_Id)
ls_bank=ls_bank+Char(li_Body34[i])
Next
if ls_bank = gs_Bank_Id then
for i=len(ls_bank)+1 to li_herder[40]
ls_p=ls_p+ Char(li_Body34[i])
Next
End if
ls_p=mid(ls_p,13)//截取指定字符串 arg0 要截取的字符串 arg1 截取长度
return ls_p