I have a problem I want to convert vb code to c# code

public object URLDecode(string What)
    {
        object functionReturnValue = null;
        int Pos;
        int pPos;
        What = What.ToString().Replace("+", " ");
        StringReader Stream = new StringReader(What);
        ErrorEventArgs Err;
        if (Convert.ToInt64(Err) == 0) {
            Pos = What.ToString().IndexOf("%",1);
            pPos = 1;
            while (Pos > 0) {
               pPos = Pos + 3;
               Pos = What.ToString().IndexOf("%", pPos);
            }
            Stream.WriteText(Strings.Mid(What, pPos));
            Stream.Position = 0;
            functionReturnValue = Stream.ReadToEnd();//.ReadText;
            Stream.Close();
        }
        else {
            Pos = What.ToString().IndexOf("%", 1);
            while (Pos > 0) {
               What = Strings.Left(What, Pos - 1) + Strings.Chr((long)"&H" + Strings.Mid(What, Pos + 1, 2)) + Strings.Mid(What, Pos + 3);
                Pos = Pos + 1;
                Pos = What.ToString().IndexOf("%", Pos);
            }
            functionReturnValue = What;
        }
        Stream = null;
        return functionReturnValue;
    }
     
sitgAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
DhaestConnect With a Mentor Commented:
The code above is in c#... do you have a problem with your code or do you want it in vb.net ?

Vb.net code of example above
Public Function URLDecode(ByVal What As String) As Object 
    Dim functionReturnValue As Object = Nothing 
    Dim Pos As Integer 
    Dim pPos As Integer 
    What = What.ToString().Replace("+", " ") 
    Dim Stream As New StringReader(What) 
    Dim Err As ErrorEventArgs 
    If Convert.ToInt64(Err) = 0 Then 
        Pos = What.ToString().IndexOf("%", 1) 
        pPos = 1 
        While Pos > 0 
            pPos = Pos + 3 
            Pos = What.ToString().IndexOf("%", pPos) 
        End While 
        Stream.WriteText(Strings.Mid(What, pPos)) 
        Stream.Position = 0 
        functionReturnValue = Stream.ReadToEnd() 
        '.ReadText; 
        Stream.Close() 
    Else 
        Pos = What.ToString().IndexOf("%", 1) 
        While Pos > 0 
            What = Strings.Left(What, Pos - 1) + Strings.Chr(CLng("&H") + Strings.Mid(What, Pos + 1, 2)) + Strings.Mid(What, Pos + 3) 
            Pos = Pos + 1 
            Pos = What.ToString().IndexOf("%", Pos) 
        End While 
        functionReturnValue = What 
    End If 
    Stream = Nothing 
    Return functionReturnValue 
End Function 

Open in new window

0
 
Jaime OlivaresConnect With a Mentor Software ArchitectCommented:
You don't have to do all this. There is a ready-made .net function for this:
public string URLDecode(string What)
{
       return System.Web.HttpUtility.UrlDecode(What);
}

Open in new window

0
 
sitgAuthor Commented:
thanks
0
All Courses

From novice to tech pro — start learning today.