HttpCookie 操作Cookie
//写入Cookie
protected void Button1_Click(object sender, EventArgs e)
{
HttpCookie cok = new HttpCookie("CaseInfo");
cok.Values.Add("Name", "厦门思明区");
cok.Values.Add("DTime", "时间变量");
cok.Expires = DateTime.Now.AddDays(2);
Response.AppendCookie(cok);
}
//删除其中一个属性
protected void Button2_Click(object sender, EventArgs e)
{
HttpCookie cok = Request.Cookies["CaseInfo"];
if (cok != null)
{
cok.Values.Remove("Name");
Response.AppendCookie(cok);
}
}
//整个Cookie都删除
protected void Button3_Click(object sender, EventArgs e)
{
HttpCookie cok = Request.Cookies["CaseInfo"];
cok.Expires = DateTime.Now.AddDays(-1);
Response.AppendCookie(cok);
}
//读取Cookie
protected void Button5_Click(object sender, EventArgs e)
{
if (Request.Cookies["CaseInfo"] != null)
{
string temp = Convert.ToString(Request.Cookies["CaseInfo"].Values["Name"]) + " " + Convert.ToString(Request.Cookies["CaseInfo"].Values["DTime"]);
if (!string.IsNullOrEmpty(temp))
{
Response.Write(temp);
}
else
{
Response.Write("字符串为空");
}
}
else
{
Response.Write("为空");
}
}
//以下为实例
其它网上实例(简单看一下内容没有全部正确):
今天有空就把操作cookie的写了,虽然很简单,不过免得到时候忘记了,之前就是忘记了还很实验了一番才弄出来,郁闷了。
下面是写cookie
1 HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
2 DateTime dt = DateTime.Now;//定义时间对象
3 TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
4 cookie.Expires = dt.Add(ts);//添加作用时间
5 cookie.Values.Add("user","cxbkkk");//增加属性
6 cookie.Values.Add("userid","1203");
7 Response.AppendCookie(cookie);//确定写入cookie中 读取cookie
1 if(Request.Cookies["Info"]!=null)
2 {
3 string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+" "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
4 //读全部就用Request.Cookies["Info"].Value)
5 if(temp=="")
6 {
7 Response.Write("空");
8 }
9 else
10 Response.Write(temp);
11 }
12 else
13 {
14 Response.Write("error");
15 } 修改cookie
1 Response.Cookies["Info"]["user"] = "2";
2 Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1); 删除cookie下的属性
1 HttpCookie acookie=Request.Cookies["Info"];
2 acookie.Values.Remove("userid");
3 acookie.Expires = DateTime.Now.AddDays(1);
4 Response.Cookies.Add(acookie); 删除所有cookie,就是设置过期时间为现在就行了
1 int limit=Request.Cookies.Count - 1;
2 for(int i=0;i<limit;i++)
3 {
4 acookie = Request.Cookies(i)
5 acookie.Expires = DateTime.Now.AddDays(-1)
6 Response.Cookies.Add(acookie)
7 }
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); // Get cookie from the current request. HttpCookie cookie = Request.Cookies.Get("DateCookieExample"); // Check if cookie exists in the current request. if (cookie == null) { sb.Append("Cookie was not received from the client. "); sb.Append("Creating cookie to add to the response. <br/>"); // Create cookie. cookie = new HttpCookie("DateCookieExample"); // Set value of cookie to current date time. cookie.Value = DateTime.Now.ToString(); // Set cookie to expire in 10 minutes. cookie.Expires = DateTime.Now.AddMinutes(10d); // Insert the cookie in the current HttpResponse. Response.Cookies.Add(cookie); } else { sb.Append("Cookie retrieved from client. <br/>"); sb.Append("Cookie Name: " + cookie.Name + "<br/>"); sb.Append("Cookie Value: " + cookie.Value + "<br/>"); sb.Append("Cookie Expiration Date: " + cookie.Expires.ToString() + "<br/>"); } Label1.Text = sb.ToString(); } </script> <html > <head runat="server"> <title>HttpCookie Example</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Label id="Label1" runat="server"></asp:Label> </div> </form> </body> </html>