关于plist文件

来源:互联网 发布:跳跃网络忘记账号 编辑:程序博客网 时间:2024/05/16 15:54

Plist格式属于XML文件,用于通常用于储存用户设置,也可以用于存储捆绑的信息。为避免我们在写程序时候写死,方便以后的测试修改工作,我们常常需要用.plist文件存储用户设置等信息,类似的还有粒子效果,瓦片地图等,使用TexturePackerParticle Designer图片工具打包小图片时,就会生成一个pilst文件。

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"

   "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">

    <dict>

        <key>lblSound</key>

        <string>音 效:</string>

        <key>lblMusic</key>

        <string>背景音:</string>

        <key>sound</key>

        <string>音效</string>

        <key>test</key>

        <string>测试</string>

        <key>music</key>

        <string>音乐</string>

        <key>info_service</key>

        <string>信息与服务</string>

 <key>lblHighScore</key>

        <string>最高分:</string>

    </dict>

</plist>

 

<Key>是键,<real>是属性值,<string>UTF-8编码的中文字符。这里是将需要的文字全部提取到文件中。这样也能避免出现中文乱码的问题。

 

使用实例:

string MyUitility::getUTF8Char(const string key)

{

auto SharedFileUtils = FileUtils::getInstance();

std::string fullPathForFilename = SharedFileUtils->fullPathForFilename("utf8_char.plist");

bool isExist = false;

 

isExist= SharedFileUtils->isFileExist(fullPathForFilename);

 if (!isExist)

 {

 log("utf8_char.plist no ");

 return "";

}

ValueMap map= SharedFileUtils->getValueMapFromFile(fullPathForFilename);

Value Value = map[key];

return Value.asString();

 

}

 

 

   auto txtTest = Label::createWithTTF(MyUtility::getUTF8Char("test"), "fonts/hanyi.ttf", 18);

txtTest->setColor(Color3B(14,83,204));

txtTest->setPosition(95, top->getPosition().y - 70);

txtTest->setAnchorPoint(Vec2(0,0));

addChild(txtTest, 1);

注:使用的是关东升老师的《Cocos2d-x实战 c++》中的代码。

0 0