原文链接:http://bbs.9ria.com/thread-284082-1-2.html

之前做一个数据缓存,就顺便把写入缓存,清除缓存,获取缓存都整理了一下,其中也做了些参考,个人水平有限,有需要的就拿去改改用吧。

上代码:

package
{
       importflash.net.SharedObject;
       importflash.system.Security;
       importflash.system.SecurityPanel;
       public classcookie
       {
             private varso:SharedObject;
             private var_name:String
             publicfunction cookie(file_name:String)
             {
                  //constructor code
                  so =SharedObject.getLocal(file_name,"/");
                 _name=file_name
             }
             publicfunction flushData(key:String,value:*):void
             {
                 //添加数据
                  if(so.data.cookie == null)
                  {
                       varobj:Object = {};
                       obj[key] =value;
                       so.data.cookie= obj;
                  }else
                  {
                       so.data.cookie[key]= value;

                  }
                 trace(key+":"+so.data.cookie[key]);
                 flush();
             }
             publicfunction deleteData(key:String):void
             {
                 //删除数据值
                  if(judge(key))
                  {
                       deleteso.data.cookie[key];
                       flush();
                  }
             }
             publicfunction getName():String
             {
                 //获取数据名
                  return_name
             }
             publicfunction getData(key:String):*
             {
                 //获取数据值
                  if(judge(key))
                  {
                       returnso.data.cookie[key];
                  }else
                  {
                       returnnull;
                  }
             }
             publicfunction clearData():void
             {
                 //清除缓存
                 so.clear();
             }
             publicfunction judge(key:String):Boolean
             {
                 //判断数据是否存在
                  returnso.data.cookie != undefined && so.data.cookie[key] !=undefined

             }
             privatefunction flush():void
             {
                 //写入
                  if(so)
                  {
                       try
                       {
                            so.flush();
                       }
                       catch(e:Error)
                       {
                            Security.showSettings();
                            Security.showSettings( SecurityPanel.LOCAL_STORAGE );
                       }
                  }
             }

       }

}

标注的都比较清楚,直接实例化,调用方法可以了,附件为cookie.as文件

【转】一个小工具类,利用shareObject把数据缓存的更多相关文章

  1. 一个小工具,利用php把指定目录文件递归上传到阿里云OSS

    cp2oss(_GALLERY_DIR); function cp2oss($directory) { $mydir = dir($directory); while($file = $mydir-& ...

  2. 【开源一个小工具】一键将网页内容推送到Kindle

    最近工作上稍微闲点,这一周利用下班时间写了一个小工具,其实功能挺简单但也小折腾了会. 工具名称:Simple Send to Kindle Github地址:https://github.com/zh ...

  3. 简化bigdecimal计算的小工具类

    简化bigdecimal计算的小工具类 如果我们要做一个加法运算,需要先将两个浮点数转为String,然后够造成BigDecimal,在其中一个上调用add方法,传入另一个作为参数,然后把运算的结果( ...

  4. 提高Scrum站会效率的一个小工具

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:提高Scrum站会效率的一个小工具.

  5. 分享一个Snackbar工具类 SnackbarUtils;

    分享一个Snackbar工具类,源代码也是在Github上面找的,自己做了一下修改: 功能如下: 1:设置Snackbar显示时间长短                 1.1:Snackbar.LEN ...

  6. 编写一个数组工具类, 编写本软件的 帮助文档(API文档)

    本文档是对静态成员的练习. 一. 建立一个ArrayTool(数组工具)的类,在此类中对传入数组进行一些操作(选最大值.先最小值.冒泡排正序.选择排反序.输出数组元素), 二. 建立一个Test的类, ...

  7. java中定义一个CloneUtil 工具类

    其实所有的java对象都可以具备克隆能力,只是因为在基础类Object中被设定成了一个保留方法(protected),要想真正拥有克隆的能力, 就需要实现Cloneable接口,重写clone方法.通 ...

  8. Windows PE 第一章 熟悉OD(顺便破解一个小工具)

    熟悉OD(顺便破解一个小工具) 上一节了解了OD的简单使用,这次就练习下,目标是破解一款小软件(入门练手用的,没有壳什么的). 首先我们来看一下这个小软件: 我们的目的是输入任何字符串都可以成功注册, ...

  9. 编写Java程序,创建一个数学工具类,将该类设计为final类,Final 修饰符的使用。

    返回本章节 返回作业目录 需求说明: 创建一个数学工具类. 将该类设计为final类. 将该类的构造方法的访问权限定义为私有,以防止外界实例化该类. 在该类定义静态double类型常量π,其值为3.1 ...

随机推荐

  1. Humble Numbers(丑数) 超详解!

    给定一个素数集合 S = { p[1],p[2],...,p[k] },大于 1 且素因子都属于 S 的数我们成为丑数(Humble Numbers or Ugly Numbers),记第 n 大的丑 ...

  2. android学习3——长宽的单位问题dp,px,dpi

    android设备的单位px,pt,dp,sp 分辨率 先通俗说下分辨率的概念.可以把屏幕想想成一个个正方形格子组成的.如果横向有1280个格子,竖向有720个格子.那么分辨率就是1280*720.这 ...

  3. android shell常用命令

     du -sm foldername 查看文件夹foldername 的大小,单位是兆(m),du -sk foldername单位是k    adb shell rm -r /mnt/sdcard/ ...

  4. [Selenium With C#学习笔记] Lesson-02 Web元素定位

    使用Selenium来做自动化测试,一般的流程是:查找定位元素--->操作元素--->断言,那么第一步我们需要能够完成查找并定位元素,Selenium目前提供了8种基本定位方法,可根据实际 ...

  5. c++ STL常用算法使用方法

    #include <string> #include <vector> #include <functional> #include <iostream> ...

  6. spring mvc 结合 Hessian 配置

    spring mvc 结合 Hessian 配置 1.先在web.xml中配置 <!-- Hessian配置 --> <servlet> <servlet-name> ...

  7. JavaScript中非常强大的Swiper

    刚开始学习javaScript的时候,做轮播图(比如手机淘宝首页的广告位置)是使用html和css结合js的for语句.传参等知识写出来的.但学到js事件时,其实用Swiper更加好写,Swiper的 ...

  8. 高精度模板 Luogu P1932 A+B & A-B & A*B & A/B Problem

    P1932 A+B & A-B & A*B & A/B Problem 题目背景 这个题目很新颖吧!!! 题目描述 求A.B的和差积商余! 输入输出格式 输入格式: 两个数两行 ...

  9. DES加密解密与AES加密解密

    随着开发时间的变长,当初认为比较难的东西,现在渐渐也就变的不那么难了!特别对于一些经常很少使用的类,时间长了之后渐渐就陌生了.所以在这里写一些日后可能会用到的加密与解密. 一.AES加密算法和DES加 ...

  10. vuejs数据双向绑定原理(get & set)

    前端的数据双向绑定指的是view(视图)和model(数据)两者之间的关系:view层是页面上展示给用户看的信息,model层一般是指通过http请求从后台返回的数据.view到model的绑定都是通 ...