Chinaunix首页 | 论坛 | 博客
  • 博客访问: 99844
  • 博文数量: 73
  • 博客积分: 3971
  • 博客等级: 中校
  • 技术积分: 875
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-09 20:57
文章分类

全部博文(73)

文章存档

2008年(73)

我的朋友
最近访客

分类: 系统运维

2008-06-02 09:07:32

  1. /**    
  2.  * @link   
  3.  * @author Kinglong  
  4.  * @playerversion flash player 9   
  5.  * @asversion 3.0  
  6.  * @version 0.5  
  7.  */     
  8.   
  9. package com.klstudio.util {   
  10.        
  11.     import flash.net.SharedObject;     
  12.   
  13.     public class Cookie {   
  14.            
  15.         private var _time:uint;   
  16.         private var _name:String;   
  17.         private var _so:SharedObject;   
  18.            
  19.         public function Cookie(name:String = "klstudio", timeOut:uint=3600) {   
  20.             _name = name;   
  21.             _time = timeOut;   
  22.             _so = SharedObject.getLocal(name, "/");   
  23.         }   
  24.            
  25.         //清楚超时内容;   
  26.         public function clearTimeOut():void {   
  27.             var obj:* = _so.data.cookie;   
  28.             if(obj == undefined){   
  29.                 return;   
  30.             }   
  31.             for(var key in obj){   
  32.                 if(obj[key] == undefined || obj[key].time == undefined || isTimeOut(obj[key].time)){   
  33.                     delete obj[key];   
  34.                 }   
  35.             }   
  36.             _so.data.cookie = obj;   
  37.             _so.flush();   
  38.         }   
  39.            
  40.         private function isTimeOut(time:uint):Boolean {   
  41.             var today:Date = new Date();           
  42.             return time + _time * 1000 < today.getTime();   
  43.         }   
  44.            
  45.         //获取超时值;   
  46.         public function getTimeOut():uint {   
  47.             return _time;   
  48.         }   
  49.            
  50.         //获取名称;   
  51.         public function getName():String {   
  52.             return _name;   
  53.         }   
  54.            
  55.         //清除Cookie所有值;   
  56.         public function clear():void {   
  57.             _so.clear();   
  58.         }   
  59.            
  60.         //添加Cookie值   
  61.         public function put(key:String, value:*):void {   
  62.             var today:Date = new Date();   
  63.             key = "key_"+key;   
  64.             value.time = today.getTime();   
  65.             if(_so.data.cookie == undefined){   
  66.                 var obj:Object = {};   
  67.                 obj[key] = value;   
  68.                 _so.data.cookie = obj;   
  69.             }else{   
  70.                 _so.data.cookie[key] = value;   
  71.             }   
  72.             _so.flush();   
  73.         }   
  74.            
  75.            
  76.         //删除Cookie值;   
  77.         public function remove(key:String):void {   
  78.             if (contains(key)) {   
  79.                 delete _so.data.cookie["key_" + key];   
  80.                 _so.flush();   
  81.             }   
  82.         }   
  83.            
  84.         //获取Cookie值;   
  85.         public function get(key:String):Object{        
  86.             return contains(key)?_so.data.cookie["key_"+key]:null;   
  87.         }   
  88.            
  89.         //Cookie值是否存在;   
  90.         public function contains(key:String):Boolean{   
  91.             key = "key_" + key;    
  92.             return _so.data.cookie != undefined && _so.data.cookie[key] != undefined;   
  93.         }   
  94.     }   
  95. }  
阅读(454) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~