This is probably very simple, but I simply cannot find the answer myself :(
Basicaly, what I want is, given this string:
"http://www.google.com/search?hl=en&q=c# objects"
I want this output:
http://www.google.com/search?hl=en&q=c%23+objects
I'm sure there's some helper class somewhere buried in the Framework that takes care of that for me, but I'm having trouble finding it.
EDIT: I should add, that this is for a Winforms App.
If you don't want a dependency on System.Web here is an implementation of "UrlEncode" I have in my C# OAuth Library (which requires a correct implementation - namely spaces should be encoded using percent encoding rather the "+" for spaces etc.)
For reference http://en.wikipedia.org/wiki/Percent-encoding
@Wilfred Knievel has the accepted answer, but you could also use
Uri.EscapeUriString()
if you wanted to avoid the dependency on theSystem.Web
namespace.Look at Server.UrlEncode
http://msdn.microsoft.com/en-us/library/ms525738.aspx
HttpServerUtility.UrlEncode(string)
Should sort out any troublesome characters
To use it you'll need to add a reference to System.Web (Project Explorer > References > Add reference > System.Web)
Once you've done that you can use it to encode any items you wish to add to the querystring: