将此函数从VB转换为c#

时间:2017-02-03 22:26:31

标签: c# vb.net

我一直在试图将这个经典的asp(vb)转换为asp.net c#,但没有运气。

Function Decrypt1(s)
    if isnull(s) then
    Decrypt1 = ""
    else
    Dim r, i, ch
    For i = 1 To Len(s)/2
        ch = "&H" & Mid(s, (i-1)*2+1, 2)
        ch = ch Xor 111
        r = r & Chr(ch)
    Next
    Decrypt1 = strReverse(r)
    end if
End Function

任何参赛者?

提前致谢!

编辑 - “0B031D00180003030A07”应解密为“helloworld”

3 个答案:

答案 0 :(得分:0)

<强>更新

以下是解密字符串的c-sharp方法:

    public static string Decrypt1(string s)
    {
        string functionReturnValue = null;
        if (string.IsNullOrEmpty(s))
        {
            functionReturnValue = "";
        }
        else
        {
            string r = null;
            int ch = null;

            for (int i = 0; i < s.Length / 2; i++)
            {
                ch = int.Parse(s.Substring((i) * 2, 2), NumberStyles.AllowHexSpecifier);
                ch = ch ^ 111;
                r = r + (char)(ch);
            }

            var charArray = r.ToCharArray();
            Array.Reverse(charArray);
            functionReturnValue = new string(charArray);
        }
        return functionReturnValue;
    }

Try it on Net Fiddle

答案 1 :(得分:0)

您可以尝试在线转换器。

以下是其中之一:http://converter.telerik.com/

答案 2 :(得分:0)

这个适用于您的helloworld示例:

stdin