Solved

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

Posted on 2007-11-15
3
336 Views
Last Modified: 2008-02-01
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;
    }
     
0
Comment
Question by:sitg
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 53

Accepted Solution

by:
Dhaest earned 250 total points
ID: 20296542
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
 
LVL 55

Assisted Solution

by:Jaime Olivares
Jaime Olivares earned 250 total points
ID: 20296549
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
 

Author Comment

by:sitg
ID: 20310382
thanks
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question