我翻译了一个。
public void  keyString(String NewValue )
{
    Strg1 = NewValue;
    String Strg11;
    Strg11 = "";
    for(i=1;i<strg1.length() + 1)
   {
        If (i <= keykey.length()) 
        {   //这里不会
            Strg11 = Strg11 + Chr(Asc(Mid(Strg1$, i, 1)) Xor Asc(Mid(keykey, i, 1)))
        }else{
            //这里不会
            Strg11 = Strg11 + Chr(Asc(Mid(Strg1$, i, 1)) Xor Asc(220))
        }
   }
    Strg1 = Strg11;
}

解决方案 »

  1.   

    public class Test { private String Pass$; private String Strg$; private String H$; private String Strg1$; // Public Function encrypt(ByVal PWDString As String) As String
    public String encrypt(String PWDString) { // Dim i As Integer, l
    int i = 1; // Dim H1$
    String H1$; // If Strg1$ = "" Then
    if ("".equals(Strg1$)) { // encrypt = ""
    return ""; // Exit Function
    // End If
    } // 'If Len(PWDString) > Len(Strg1$) Then PWDString = Left(PWDString, 11)
    // Pass$ = PWDString
    Pass$ = PWDString; // '将密码串通过异或运算加载到字符串Strg1$中,结果存放在变量Strg$中 // Strg$ = Crypt(Pass$, Strg$)
    Strg$ = Crypt(Pass$, Strg$); // H$ = ""
    H$ = ""; // For i = 1 To Len(Strg$)
    String j$;
    for (i = 1; i < Strg$.length(); i++) { // b = Asc(Mid$(Strg$, i, 1))//不会 // j$ = Hex$(b)//不会


    // If Len(j$) = 1 Then j$ = "000" + j$
    if (j$.length()==1) j$ = "000" + j$;

    // If Len(j$) = 2 Then j$ = "00" + j$
    if (j$.length()==2) j$ = "00" + j$;

    // If j$ <> "00" Then H$ = H$ + j$
    if (!j$.equals("00")) H$ = H$ + j$;

    // Next
    }
    // encrypt = H$
    return H$;
    // End Function
    }
    }
      

  2.   

    去网上下个翻译软件J-ASP