弱联网游戏
libcurl的集成和使用
先初始化
curl_global_init(CURL_GLOBAL_ALL);
//CURL_GLOBAL_ALL(包括win32和ssl)
//CURL_GLOBAL_WIN32
//CURL_GLOBAL_SSL
释放,退出时候,可以在OnExit();
curl_global_cleanup();
http请求
多线程开发技术
pthread
数据存取技术
cocos2dx数据持久化存储
cocos2dx文件存取
CCFileUtils//单例模式
getFileData();GetFileDataFormZip();fullPathFromRalativePath();
fullPathFromRelativePath()//把相对(全)路径转换成绝对路径,读取文件要绝对路径
SetResourceDirectory();//设置资源文件的路径
GetResourceDiretory();//
GetWriteablePath();//获取一个可写权限的路径
CCUserDefault
//存取,设置数据,单例对象,存放在xml文件里
//获取数据
CCUserDefault::shareUserDefult->setStringForKey("string1","value");
->setIntegerForKey("int",10);
...
flush();刷新
//设置数据
CCUserDefault::shareUserDefult->GetStringForKey("string1");
->GetIntegerForKey("int");
...
FILE(win32)
网络数据的处理
xml数据处理的不同方式
1.包含xml库,添加路径,添加头文件 (配置环境)
//定义文档和节点指针
2.xmlDocPtr pdoc = xmlNewDoc(BAD_CAST"1.0");//typedef BAD_CAST xmlchar*
xmlNodePtr root_node = xmlNewNode(NULL,BAD_CAST"root");
//设置根节点
3.xmlDocSetRootElement(doc,root_node);
//在根节点中创建节点
xmlNewTextChild(root_node,NULL,BAD_CAST"newNode1"...); //第一种
xmlNodePtr newnode = xmlNewNode(NULL,BAD_CAST"node2");//第二种
xmlNodePtr context = xmlNewText(BAD_CAST"NODE CONTEXT");
xmlAddChild(root_node,newnode); //把newnode添加到root_node中
xmlAddChild(newnode,context);
xmlNewProp(node,BAD_CAST"attribute",BAD_CAST"YES"); //设置node中的属性
iconv处理中文编码问题
第三方库
a.创建xml
tinyxml.h tinystr.h
1.创建一个xml的文档对象
TiXmlDocument *myDocument = new TiXmlDocment();
2.创建一个根元素并连接
TiXmlElement *RootElement = new TiXmlElement("person");
MyDocument->LinkEndChild(RootElement);
3.创建一个Person的元素,并添加到root
TiXmlElement *PersonElement = new TiXmlElement("person");
TootElement->LinkEndChild(PersonElement);
4.设置Person属性
PersonELement->SetAttribute("ID","1");
5.创建name元素,age元素并连接
TiXmlElement *NameElement = new TiXmlElement("name");
TiXmlElement *AgeElement = new TiXmlElement("age");
6.添加
PersonELement->LinkEndChild(NameElement);
PersonELement->LinkEndChild(AgeElement);
7.设置name元素和age元素的内容并连接
TiXmlText *NameContext = new TiXmlText("hello world");
TiXmlText *AgeContext = new TiXmlText("hello kitty");
NameElement->LinkEndChild(NameContext);
AgeElement->LinkEndChild(AgeContext);
8.保存文件
char filepath[100] = {'\0'}; //strcat将字符串连接
strcat(filepath,CCFileUtils::sharedFileUtils->getWriteablePath().c_str());
strcat(filepath,"CreateTinyXml.xml");
MyDocument->saveFile(filepath);
9.解析xml
TiXmlDocument *myDocument = new TiXmlDocment("CreateTinyXml.xml");
b.Json文件编写/解析
存放方式
[
{"name":"more-top","age":13}
{"name":"android","age":12}
]
#include "json" //parse解析
libcurl的集成和使用
先初始化
curl_global_init(CURL_GLOBAL_ALL);
//CURL_GLOBAL_ALL(包括win32和ssl)
//CURL_GLOBAL_WIN32
//CURL_GLOBAL_SSL
释放,退出时候,可以在OnExit();
curl_global_cleanup();
http请求
多线程开发技术
pthread
数据存取技术
cocos2dx数据持久化存储
cocos2dx文件存取
CCFileUtils//单例模式
getFileData();GetFileDataFormZip();fullPathFromRalativePath();
fullPathFromRelativePath()//把相对(全)路径转换成绝对路径,读取文件要绝对路径
SetResourceDirectory();//设置资源文件的路径
GetResourceDiretory();//
GetWriteablePath();//获取一个可写权限的路径
CCUserDefault
//存取,设置数据,单例对象,存放在xml文件里
//获取数据
CCUserDefault::shareUserDefult->setStringForKey("string1","value");
->setIntegerForKey("int",10);
...
flush();刷新
//设置数据
CCUserDefault::shareUserDefult->GetStringForKey("string1");
->GetIntegerForKey("int");
...
FILE(win32)
网络数据的处理
xml数据处理的不同方式
1.包含xml库,添加路径,添加头文件 (配置环境)
//定义文档和节点指针
2.xmlDocPtr pdoc = xmlNewDoc(BAD_CAST"1.0");//typedef BAD_CAST xmlchar*
xmlNodePtr root_node = xmlNewNode(NULL,BAD_CAST"root");
//设置根节点
3.xmlDocSetRootElement(doc,root_node);
//在根节点中创建节点
xmlNewTextChild(root_node,NULL,BAD_CAST"newNode1"...); //第一种
xmlNodePtr newnode = xmlNewNode(NULL,BAD_CAST"node2");//第二种
xmlNodePtr context = xmlNewText(BAD_CAST"NODE CONTEXT");
xmlAddChild(root_node,newnode); //把newnode添加到root_node中
xmlAddChild(newnode,context);
xmlNewProp(node,BAD_CAST"attribute",BAD_CAST"YES"); //设置node中的属性
iconv处理中文编码问题
第三方库
a.创建xml
tinyxml.h tinystr.h
1.创建一个xml的文档对象
TiXmlDocument *myDocument = new TiXmlDocment();
2.创建一个根元素并连接
TiXmlElement *RootElement = new TiXmlElement("person");
MyDocument->LinkEndChild(RootElement);
3.创建一个Person的元素,并添加到root
TiXmlElement *PersonElement = new TiXmlElement("person");
TootElement->LinkEndChild(PersonElement);
4.设置Person属性
PersonELement->SetAttribute("ID","1");
5.创建name元素,age元素并连接
TiXmlElement *NameElement = new TiXmlElement("name");
TiXmlElement *AgeElement = new TiXmlElement("age");
6.添加
PersonELement->LinkEndChild(NameElement);
PersonELement->LinkEndChild(AgeElement);
7.设置name元素和age元素的内容并连接
TiXmlText *NameContext = new TiXmlText("hello world");
TiXmlText *AgeContext = new TiXmlText("hello kitty");
NameElement->LinkEndChild(NameContext);
AgeElement->LinkEndChild(AgeContext);
8.保存文件
char filepath[100] = {'\0'}; //strcat将字符串连接
strcat(filepath,CCFileUtils::sharedFileUtils->getWriteablePath().c_str());
strcat(filepath,"CreateTinyXml.xml");
MyDocument->saveFile(filepath);
9.解析xml
TiXmlDocument *myDocument = new TiXmlDocment("CreateTinyXml.xml");
b.Json文件编写/解析
存放方式
[
{"name":"more-top","age":13}
{"name":"android","age":12}
]
#include "json" //parse解析