-

类说明

在CrossApp中提供了自带的存储类:CAUserDefault,适合存储数据量比较小,结构比较简单的数据。如果你需要存储大量的复杂数据,建议使用SQlite3比较合适。


CAUserDefault 方法 (点击查看方法介绍)

方法说明
setBoolForKey根据pkey存储一个bool类型
setIntegerForKey根据pkey存储一个int类型
setFloatForKey根据pkey存储一个float类型
setDoubleForKey根据pkey存储一个double类型
setStringForKey根据pkey存储一个string类型
getBoolForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回false
getBoolForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue
getIntegerForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0 
getIntegerForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue
getFloatForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0.0f 
getFloatForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue
getDoubleForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0.0
getDoubleForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue
flush存储到UserDefault.xml,不写的话不会存入 
getXMLFilePath获得UserDefault.xml的存储路径
getStringForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回""
getStringForKey根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue


存储代码如下:

    //存储名字
    CAUserDefault::sharedUserDefault()->setStringForKey("name", "zero");
     
    //存储年龄
    CAUserDefault::sharedUserDefault()->setIntegerForKey("age", 25);
     
    //存储身高
    CAUserDefault::sharedUserDefault()->setDoubleForKey("height",1.75);
     
    //存储体重
    CAUserDefault::sharedUserDefault()->setFloatForKey("wight", 75.0f);
     
    //存储性别 true为男 fasle 女
    CAUserDefault::sharedUserDefault()->setBoolForKey("sex", true);
     
    //这里一定要提交写入哦,否则不会记录到xml中,下次启动游戏你就获取不到value了
    CAUserDefault::sharedUserDefault()->flush();


读取示例代码:

    //读取name
    std::string name =  CAUserDefault::sharedUserDefault()->getStringForKey("name");
     
    //读取Email,如果没有Email则返回"default"
    std::string email = CAUserDefault::sharedUserDefault()->getStringForKey("Email","default");
     
    //读取age
    int age = CAUserDefault::sharedUserDefault()->getIntegerForKey("age");
     
    //读取id,如果没有id则返回10000
    int id = CAUserDefault::sharedUserDefault()->getIntegerForKey("id", 10000);
     
    //读取身高体重,如果没有找到则返回0
    double height =CAUserDefault::sharedUserDefault()->getDoubleForKey("height");
    float weight =CAUserDefault::sharedUserDefault()->getFloatForKey("weight");
     
    //读取sex,如果没有找到sex则返回true
    bool sex = CAUserDefault::sharedUserDefault()->getBoolForKey("false", true);

CAUserDefault 方法 

void setBoolForKey(const char* pkey,bool valuer)

返回值:void

参数:

类型参数名说明
const char*pkeypkey
boolvaluerbool类型的值

解释:根据pkey存储一个bool类型 


void setIntegerForKey(const char* pkey,int valuer)  

返回值:void

参数:

类型参数名说明
const char*pkeypkey
intvaluerint类型的值

解释:根据pkey存储一个int类型 


void setFloatForKey(const char* pkey,float valuer)

返回值:void

参数:

类型参数名说明
const char*pkeypkey
floatvaluerfloat类型的值

解释:  根据pkey存储一个float类型 


void setDoubleForKey(const char* pkey,double valuer)

返回值:void

参数:

类型参数名说明
const char*pkeypkey
doublevaluerdouble类型的值

解释:  根据pkey存储一个double类型 


void setStringForKey(const char* pkey, const std::string & value)

返回值:void

参数:

类型参数名说明
const char*pkeypkey
std::string &valuestring类型的值

解释:  根据pkey存储一个string类型 


bool getBoolForKey(const char* pKey)

返回值:bool

参数:

类型参数名说明
const char*pKeypkey

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回false 


bool getBoolForKey(const char* pKey,bool defaultValue)

返回值:bool

参数:

类型参数名说明
const char*pkeypkey
booldefaultValue默认值 

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue 


int getIntegerForKey(const char* pKey)

返回值:int

参数:

类型参数名说明
const char*pKeypkey

解释:根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0 


int getIntegerForKey(const char* pKey, int defaultValue)

返回值:int

参数:

类型参数名说明
const char*pkeypkey
intdefaultValue默认值 

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue


float getFloatForKey(const char* pKey)        

返回值:float

参数:

类型参数名说明
const char*pKeypkey

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0.0f 


float getFloatForKey(const char* pKey,float defaultValue)

返回值:float

参数:

类型参数名说明
const char*pkeypkey
floatdefaultValue默认值

解释:根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue 


double getDoubleForKey(const char* pKey)        

返回值:double

参数:

类型参数名说明
const char*pkeypkey

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回0.0


double getDoubleForKey(const cha * pKey,double defaultValue)

返回值:double

参数:

类型参数名说明
const char*pkeypkey
doubledefaultValue默认值

解释:  根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue 


void flush();

返回值:void

参数:

解释:  存储到UserDefault.xml,不写的话不会存入 


const string& getXMLFilePath();

返回值:const string&

参数:

解释:  获得UserDefault.xml的存储路径


std::string getStringForKey(const char* pKey);

返回值:

参数:

类型参数名说明
const char*pkeypkey

解释:根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回""


std::string getStringForKey(const char* pKey, const std::string & defaultValue);

返回值:

参数:

类型参数名说明
const char*pkeypkey
doubledefaultValue默认值

解释:根据pkey读取相应的值,如果没有在UserDefault.xml找出则返回defaultValue