You've already forked linux-packaging-mono
Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
parent
a569aebcfd
commit
e79aa3c0ed
@ -0,0 +1,62 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <copyright file="HttpEncoderUtility.cs" company="Microsoft">
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// </copyright>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
* Helper class for common encoding routines
|
||||
*
|
||||
* Copyright (c) 2009 Microsoft Corporation
|
||||
*/
|
||||
|
||||
namespace System.Web.Util {
|
||||
using System;
|
||||
using System.Web;
|
||||
|
||||
internal static class HttpEncoderUtility {
|
||||
|
||||
public static int HexToInt(char h) {
|
||||
return (h >= '0' && h <= '9') ? h - '0' :
|
||||
(h >= 'a' && h <= 'f') ? h - 'a' + 10 :
|
||||
(h >= 'A' && h <= 'F') ? h - 'A' + 10 :
|
||||
-1;
|
||||
}
|
||||
|
||||
public static char IntToHex(int n) {
|
||||
Debug.Assert(n < 0x10);
|
||||
|
||||
if (n <= 9)
|
||||
return (char)(n + (int)'0');
|
||||
else
|
||||
return (char)(n - 10 + (int)'a');
|
||||
}
|
||||
|
||||
// Set of safe chars, from RFC 1738.4 minus '+'
|
||||
public static bool IsUrlSafeChar(char ch) {
|
||||
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || (ch >= '0' && ch <= '9'))
|
||||
return true;
|
||||
|
||||
switch (ch) {
|
||||
case '-':
|
||||
case '_':
|
||||
case '.':
|
||||
case '!':
|
||||
case '*':
|
||||
case '(':
|
||||
case ')':
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// Helper to encode spaces only
|
||||
internal static String UrlEncodeSpaces(string str) {
|
||||
if (str != null && str.IndexOf(' ') >= 0)
|
||||
str = str.Replace(" ", "%20");
|
||||
return str;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user