cocos2dx 3.0 显示中文及乱码解决方式

遇到此问题第一时间在脑子里面联想到android下的strings.xml来做国际化,本文就仅仅针对解析xml来实现cocos2d-x的国际化解决乱码问题。

寻找解决方法的时候在cocos2d-x的cpp-tests文件里发现strings.xml。因此在事例源代码中发现此方法。

为了方便,我直接将C:\cocos2d-x-3.1\tests\cpp-tests\Resources\fonts的strings.xml文件复制到自己的fonts目录下。

<?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>chinese1</key>

<string>美好的一天</string>

<key>japanese</key>

<string>良い一日を</string>

<key>russian</key>

<string>Хорошего дня</string>

<key>spanish</key>

<string>Buen día</string>

</dict>

</plist>

xml的解析:

auto strings = FileUtils::getInstance()->getValueMapFromFile("fonts/strings.xml");

    std::string chinese  = strings["chinese1"].asString();

    std::string russian  = strings["russian"].asString();

    std::string spanish  = strings["spanish"].asString();

    std::string japanese = strings["japanese"].asString();

上一篇:Linux 下各文件夹的含义


下一篇:Oracle之sqlplus显示中文出现乱码