ローカルストレージを使ったデータ保存

ファイルやデータベースを使わずに簡単にデータの保存が出来ます。

ソースコード

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="init()">
  <mx:VBox paddingLeft="12" paddingTop="12">
    <mx:CheckBox id="a_chk" label="項目A" click="save()"/>
    <mx:CheckBox id="b_chk" label="項目B" click="save()"/>
    <mx:CheckBox id="c_chk" label="項目C" click="save()"/>
  </mx:VBox>
  <mx:Script>
    <![CDATA[	
      private var data_so:SharedObject;
			
      private function init():void{
        data_so = SharedObject.getLocal("setting");  //保存するオブジェクトの名前を指定
        load();
      }
		
      //保存してある情報を読み込む
      private function load():void{
	if(data_so.data.a != undefined){
	  a_chk.selected = data_so.data.a;
	  b_chk.selected = data_so.data.b;
	  c_chk.selected = data_so.data.c;
	}
      }
			
      //状態を保存
      private function save():void{
         data_so.data.a = a_chk.selected;
	data_so.data.b = b_chk.selected;
	data_so.data.c = c_chk.selected;
      }
]]>
</mx:Script>
</mx:WindowedApplication>


これを実行してみると



こんな感じ。
それで、チェックボックスにチェックを入れたまま終了して、そのあと再び起動すると、終了した時の状態のままになっています。


この保存方法はアプリケーションの設定を保存するときに使われるそうです。