亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

第二人生的源碼分析(六十七)LLXMLNode使用Expat

系統 1852 0
前面介紹了什么是 expat庫,也介紹怎么使用它來打開XML文件進行分析,接著下來就來分析第二人生里是怎么樣使用它。詳細的函數代碼如下:
#001?// static
#002?bool LLXMLNode::parseFile(
#003? ?? LLString filename,
#004? ?? LLXMLNodePtr& node,
#005? ?? LLXMLNode* defaults_tree)
#006?{
?
下面開始調用文件函數打開文件。
#007? ?? // Read file
#008? ?? FILE* fp = LLFile::fopen(filename.c_str(), "rb");?????? /* Flawfinder: ignore */
?
下面判斷文件打開是否成功。
#009? ?? if (fp == NULL)
#010? ?? {
#011? ?????? node = new LLXMLNode();
#012? ?????? return false;
#013? ?? }
?
下面獲取文件的長度。先把文件指針移到文件尾,然后獲取當前的長度,再把文件指針移回到原來的位置。
#014? ?? fseek(fp, 0, SEEK_END);
#015? ?? U32 length = ftell(fp);
#016? ?? fseek(fp, 0, SEEK_SET);
#017?
?
下面創建文件長度的數據緩沖區。
#018? ?? U8* buffer = new U8[length+1];
?
把數據讀取緩沖區里。
#019? ?? size_t nread = fread(buffer, 1, length, fp);
#020? ?? buffer[nread] = 0;
?
關閉文件。
#021? ?? fclose(fp);
#022?
?
開始調用類成員函數 parseBuffer來分析文件的數據。
#023? ?? bool rv = parseBuffer(buffer, nread, node, defaults_tree);
?
刪除分配的內存緩沖區。
#024? ?? delete [] buffer;
#025? ?? return rv;
#026?}
?
上面這個函數先把文件打開,然后獲取文件的長度,接著創建一個與文件長度一樣的緩沖區,把數據讀取到內存緩沖區里,最后調用函數 parseBuffer來分析文件的數據。簡單簡單的代碼,就是這樣直接和清晰。
?

第二人生的源碼分析(六十七)LLXMLNode使用Expat庫打開文件


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 成人在线观看一区 | 久久一日本道色综合久久m 久久一色本道亚洲 | 国产高清一区二区三区视频 | 欧美国产亚洲一区 | 国产在线视频精品视频免费看 | 日本国产精品 | 精品视频日本 | 九七影院97影院理论片 | a级做人爱免费播放 | 在线观看日本人免费视频色 | 乱人伦精品一区二区 | 曰曰鲁夜夜免费播放视频 | 亚洲欧美日韩一级特黄在线 | 欧美日韩中文在线视频 | 国产精品高清在线观看 | 亚洲精品一区二区三区香蕉在线看 | 国产婷婷高清在线观看免费 | 日本人hdxxxxvideo | 性做久久久久久坡多野结衣 | 久久国产精品老女人 | 插插天天| 久久香蕉国产线看观看式 | 99久久国产综合精品五月天 | 99国产情在线视频 | 四虎久久影院 | 日韩精品成人免费观看 | 可以免费观看一级毛片黄a 可以直接看的毛片 | 精品亚洲成a人在线播放 | 国产精品v免费视频 | 亚洲欧美精品综合中文字幕 | 女人十六毛片 | 日韩欧美国产精品第一页不卡 | 成人在线日韩 | 欧美不卡影院 | 成人免费一区二区三区在线观看 | 欧美一区二区三区播放 | 天海冀一二三区 | 2022国内精品免费福利视频 | 久久久久久久久久免观看 | 欧美成人aa大片拍拍拍 | 在线99视频|