獲取父頁面URL的參數對應值及左對齊字符


        
///  <summary>
        
/// 返回包含中文字符的字符串長度。
        
/// C# 的string.Length中中文字只做1位統計,所以要將其轉換爲2位
        
/// </summary>       
        
/// <param name="strSource">要統計長度的字符串變量</param>
        
/// <returns>字符串長度</returns>

        public static int GetLength(string strSource)
        
{
            
return Encoding.GetEncoding("GB2312").GetBytes(strSource).Length;
        }
  
        
/// <summary>
        
/// 左對齊字符串
        
/// <remarks>
        
/// 如原始字符串不滿足參數<paramref name="length"/>指定的長度則在<paramref name="objectString"/>指定的原始字符串後補'~'
        
/// </remarks>
        
/// </summary>
        
/// <param name="objectString">原始字符串</param>
        
/// <param name="length">左對齊後的字符串長度</param>
        
/// <returns>左對齊後的字符串</returns>
        
/// <example>
        
/// 如調用方式爲PadRightString("123",5);
        
/// 則返回值爲"123~~"
        
/// </example>
        
/// <exception cref="InvalidTelegraphStringLengthException">
        
/// 當參數<paramref name="objectString"/>的長度超出參數<paramref name="length"/>指定的值時拋出
        
/// </exception>

        public static string PadRightString(string objectString, int length)
        
{
            
//原始字符串長度,中文字符按2位計
            int objectStringLength = GetLength(objectString);
            
if (objectString == null || objectStringLength > length)
            
{
                
throw new InvalidTelegraphStringLengthException();
            }

            
else
            
{
                
//需自動填充的長度
                int suffixLength = length - objectStringLength;
                
string sunffix = string.Empty;
                
//不足位數補"~"
                for (int i = 0; i < suffixLength; i++)
                
{
                    sunffix 
+= "~";
                }

                
return objectString + sunffix;
            }

        }
 
    
/// <summary>
    
/// 獲取父頁面URL的參數對應值
    
/// </summary>
    
/// <returns></returns>

    protected Dictionary<stringstring> GetParentQueryString()
    
{
        Dictionary
<stringstring> dic = new Dictionary<stringstring>();
        
string strParams = Request.UrlReferrer.Query;
        
if (!string.IsNullOrEmpty(strParams))
        
{
            
string[] queryParams = strParams.Substring(1).Split(new char[] '&' });
            
for (int i = 0; i < queryParams.Length; i++)
            
{
                dic.Add(queryParams[i].Split(
new char[] '=' })[0], queryParams[i].Split(new char[] '=' })[1]);
            }
            
        }

        
return dic;
    }
   
 
發佈了36 篇原創文章 · 獲贊 0 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章