C#解析"a=1&b=2&c=3"字符串

若该字符串是使用Http Get发送,url?a=1&b=2&c=3,使用下边代码即可获取参数a的值:

Request.QueryString["a"]

若该字符串是远程接口返回,以前都是用Split函数去拆分,今天发现一个非常强大的方法ParseQueryString,简单多了:

<%@ WebHandler Language="C#" Class="Default" %>

using System;
using System.Web;
using System.Text;
using System.Collections.Specialized;

public class Default : IHttpHandler {
    
    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";

        string str = "a=1&b=2&c=3";
        NameValueCollection query = HttpUtility.ParseQueryString(str, Encoding.GetEncoding("gb2312"));
        context.Response.Write(query["a"]);

    }

    public bool IsReusable {
        get {
            return false;
        }
    }

}


评论: 0 | 引用: 0 | 查看次数: 5708
发表评论
登录后再发表评论!