C#を使用してエンコードされたURLパラメータをデコードするにはどうすればよいですか?例えばC#を使用してURLパラメータをデコードするにはどうすればよいですか?
、このURLを取る:
my.aspx?val=%2Fxyz2F
C#を使用してエンコードされたURLパラメータをデコードするにはどうすればよいですか?例えばC#を使用してURLパラメータをデコードするにはどうすればよいですか?
、このURLを取る:
my.aspx?val=%2Fxyz2F
Server.UrlDecode(xxxxxxxx)
あなたはHttpServerUtility.UrlDecode
かHttpUtility.UrlDecode
を試みたことがありますか?
インスタンスメソッドである 'HttpServerUtility.UrlDecode'にアクセスするには' HttpContext.Current.Server.UrlDecode'を使うべきです。 – BornToCode
これを試してみてください:
string decodedUrl = HttpUtility.UrlDecode("my.aspx?val=%2Fxyz2F");
string decodedUrl = Uri.UnescapeDataString(url)
または
string decodedUrl = HttpUtility.UrlDecode(url)
のURLは、完全に1回のコールでデコードされていません。完全にあなたがループ内でこのメソッドのいずれかを呼び出すことができますデコードするには、次の
private static string DecodeUrlString(string url) {
string newUrl;
while ((newUrl = Uri.UnescapeDataString(url)) != url)
url = newUrl;
return newUrl;
}
は、私は何とか、このようにあなたのURLをデコードすることができます拡張メソッドを作成するために提案できるソリューション回避策としてstring s = System.Uri.UnescapeDataString(here);
をお試しください:
public static class DecodeString
{
public static string ToDecodeString(this string x)
{
if (x.Contains("%2B"))
{
x = x.Replace("%2B", "+");
}
if (x.Contains("%2F"))
{
x = x.Replace("%2F", "/");
}
if (x.Contains("%3D"))
{
x = x.Replace("%3D", "=");
}
return x;
}
}
希望すると助かります!
この名前空間は? – PolinaC