99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

VC6.0調(diào)用JSONCPP全案例:編譯、中文解析與防亂碼實(shí)戰(zhàn)

VC6.0調(diào)用JSONCPP全案例:編譯、中文解析與防亂碼實(shí)戰(zhàn) 簡介這份資源面向仍在使用 Visual C 6.0 的開發(fā)者尤其是需要在老項(xiàng)目中處理 JSON 數(shù)據(jù)、又常被中文亂碼困擾的 C 程序員。它以 jsoncpp-src-0.5.0 源碼為基礎(chǔ)演示了在 VC6.0 中集成 JSONCPP 并正確解析、生成含中文字符 JSON 的完整案例屬于可直接復(fù)用的實(shí)戰(zhàn)型參考。壓縮包共 72 個(gè)文件約 3.77MB包含 24 個(gè) h 頭文件、9 個(gè) cpp 源文件、6 個(gè) inl 內(nèi)聯(lián)實(shí)現(xiàn)文件以及 dsp、dsw 工程文件、doc 使用說明、txt 必看提示和已編譯的 exe 可執(zhí)行文件覆蓋從源碼到可運(yùn)行工程的完整鏈路。已有 590 人學(xué)習(xí)下載。讀者可據(jù)此掌握源碼集成方式、UTF-8 編碼配置與中文防亂碼處理思路并借助說明文檔和測試案例快速驗(yàn)證解析與序列化結(jié)果減少在老版本編譯環(huán)境中踩坑的時(shí)間。1. 老編譯器遇上新數(shù)據(jù)格式VC6.0 調(diào) JSONCPP 到底卡在哪如果你手里維護(hù)著一套 VC6.0 的工控上位機(jī)、老 MFC 工具或者產(chǎn)線測試軟件最近突然被要求“把配置改成 JSON 下發(fā)”“把日志輸出成 JSON 給新平臺”那你大概率會經(jīng)歷一次血淚經(jīng)驗(yàn)VC6.0 的 C 標(biāo)準(zhǔn)庫殘缺得讓人懷疑人生而 JSONCPP 這種現(xiàn)代 C 庫默認(rèn)寫法根本喂不進(jìn)去。標(biāo)題里說的“VC6.0 調(diào)用 JSONCPP 全案例”核心要解決的就是三件事——讓 JSONCPP 在 VC6.0 下編譯通過、能正確解析帶中文的 JSON 字符串、并且不出現(xiàn)亂碼。這不是一個(gè)“隨便找個(gè)庫 include 一下”的活VC6.0 對模板、命名空間、std::string的實(shí)現(xiàn)都有坑JSONCPP 的版本選擇、字符集設(shè)置、編碼轉(zhuǎn)換每一步都能讓你翻車。適合誰看還在用 VC6.0 維護(hù)存量項(xiàng)目、又必須對接 JSON 接口的嵌入式/工控/桌面端開發(fā)者。下面我按“先跑通最小解析、再處理中文、最后避坑”的順序把可復(fù)現(xiàn)的路徑講清楚。2. 選對 JSONCPP 版本并讓 VC6.0 編譯通過2.1 為什么不能直接拿最新版 JSONCPP 塞進(jìn) VC6.0JSONCPP 從 0.x 到 1.x 的演進(jìn)過程中大量使用了 VC6.0 不支持的 C 特性std::auto_ptr的替代、nullptr、變參模板、std::unique_ptr、以及更嚴(yán)格的std::string接口。VC6.0 的 STL 是 1998 年之前的實(shí)現(xiàn)std::string沒有c_str()的 const 重載問題、沒有std::istringstream的完整支持模板偏特化也殘缺。常見做法是選 JSONCPP 0.6.0-rc2 或 0.5.0 這類老版本它們對 C98 的依賴更保守源碼里沒有nullptr和變參模板。我一般會直接找 0.6.0-rc2 的源碼包因?yàn)樗膉son_value.cpp、json_reader.cpp、json_writer.cpp三個(gè)文件在 VC6.0 下改動量最小。不要用 1.x哪怕你手動改代碼Json::Value內(nèi)部的std::map迭代器在 VC6.0 下也會因?yàn)閟td::map的erase返回值問題編譯失敗。2.2 把 JSONCPP 源碼加入 VC6.0 工程的步驟先建一個(gè) Win32 Console Application 空工程把 JSONCPP 的include/json目錄和src/lib_json下的.cpp文件加進(jìn)來。VC6.0 的工程文件是.dsp直接 Add Files to Project 即可。關(guān)鍵一步在Project Settings - C/C - Preprocessor里加上JSONCPP_NO_STDINT_H和_MBCS。JSONCPP_NO_STDINT_H是因?yàn)?VC6.0 沒有stdint.hJSONCPP 會嘗試用__int64替代_MBCS是讓 JSONCPP 內(nèi)部按多字節(jié)字符集處理避免它默認(rèn)走 Unicode 寬字符路徑。然后需要手動改幾處源碼json_value.cpp里所有std::auto_ptr改成裸指針加手動 deletejson_reader.cpp里std::istringstream換成std::stringstream并補(bǔ)#include sstream。下面是一個(gè)最小可編譯的工程配置片段放在stdafx.h之后// VC6.0 下 JSONCPP 最小配置頭文件 #define JSONCPP_NO_STDINT_H // 禁用 stdint.h 依賴 #define _MBCS // 多字節(jié)字符集中文解析基礎(chǔ) #include string #include map #include vector #include sstream // VC6.0 需手動補(bǔ)否則 json_reader 報(bào)錯 #include json/json.h // 路徑按實(shí)際 include 目錄調(diào)整 // 注意VC6.0 的 std::string 沒有 c_str() 的 const 重載問題 // 但 JSONCPP 內(nèi)部調(diào)用 c_str() 時(shí)可能返回非 const需在 json_value.cpp 里 // 把 const char* 強(qiáng)轉(zhuǎn)去掉 const否則編譯報(bào) C2440。邏輯說明JSONCPP_NO_STDINT_H讓 JSONCPP 用__int64定義Json::Int64VC6.0 能識別_MBCS保證Json::Value::asString()返回的是多字節(jié)字符串而不是寬字符。參數(shù)說明如果你的工程已經(jīng)用了_UNICODE必須改成_MBCS否則 JSONCPP 內(nèi)部std::string和std::wstring混用會直接編譯失敗。改完源碼后編譯順序建議先單獨(dú)編譯json_value.cpp再編譯json_reader.cpp最后編譯json_writer.cpp這樣報(bào)錯定位更準(zhǔn)。2.3 最小解析案例從字符串到 Json::Value編譯通過后先跑一個(gè)不涉及中文的解析確認(rèn)庫本身能用。新建一個(gè)main.cpp寫入以下代碼#include stdafx.h #include json/json.h #include iostream int main(int argc, char* argv[]) { // 構(gòu)造一個(gè)簡單 JSON 字符串注意轉(zhuǎn)義 const char* szJson {\name\:\test\,\value\:123,\flag\:true}; Json::Value root; Json::Reader reader; // parse 返回 bool失敗時(shí)可通過 reader.getFormatedErrorMessages() 看原因 if (!reader.parse(szJson, root)) { std::cout parse error: reader.getFormatedErrorMessages() std::endl; return -1; } // 讀取字段asString 默認(rèn)返回 std::string std::string name root[name].asString(); int value root[value].asInt(); bool flag root[flag].asBool(); std::cout name name , value value , flag flag std::endl; return 0; }邏輯說明Json::Reader::parse接受const char*和Json::Value解析成功返回 true。root[name]返回Json::Value引用asString()內(nèi)部調(diào)用std::string構(gòu)造。參數(shù)說明szJson里的雙引號必須轉(zhuǎn)義VC6.0 對字符串字面量長度有限制超過 16KB 的 JSON 建議用文件讀取。如果parse失敗getFormatedErrorMessages()會返回帶行號的錯誤信息但 VC6.0 下這個(gè)函數(shù)返回的std::string可能因?yàn)閟td::ostringstream問題顯示不全可以改用reader.getFormatedErrorMessages().c_str()打印。這一步跑通后說明 JSONCPP 在 VC6.0 下已經(jīng)能用了接下來處理中文。3. 中文解析與防亂碼從字節(jié)流到正確顯示3.1 中文亂碼的根因VC6.0 的字符集與 JSONCPP 的編碼假設(shè)VC6.0 默認(rèn)使用多字節(jié)字符集MBCS中文 Windows 下代碼頁是 GBK936。JSONCPP 內(nèi)部把字符串當(dāng)作字節(jié)流處理Json::Value::asString()返回的std::string里存的是原始字節(jié)。如果你從網(wǎng)絡(luò)或文件讀到的 JSON 是 UTF-8 編碼直接asString()得到的是 UTF-8 字節(jié)而 VC6.0 的std::cout或 MFC 控件按 GBK 解釋就會顯示亂碼。反過來如果你把 GBK 字符串直接塞進(jìn)Json::Value再toStyledString()輸出JSONCPP 不會做任何轉(zhuǎn)碼輸出到 UTF-8 環(huán)境也會亂。所以“防亂碼”的本質(zhì)是在 JSONCPP 邊界做一次編碼轉(zhuǎn)換要么統(tǒng)一轉(zhuǎn)成 GBK 再顯示要么統(tǒng)一轉(zhuǎn)成 UTF-8 再傳輸。我一般會在解析后立刻把std::string從 UTF-8 轉(zhuǎn)成 GBK寫入時(shí)再轉(zhuǎn)回 UTF-8。3.2 手寫 UTF-8 與 GBK 互轉(zhuǎn)函數(shù)VC6.0 可用VC6.0 沒有std::codecvt但可以用 Windows APIMultiByteToWideChar和WideCharToMultiByte做中轉(zhuǎn)。下面兩個(gè)函數(shù)放在stdafx.h之后直接調(diào)用#include windows.h #include string // UTF-8 轉(zhuǎn) GBK std::string Utf8ToGbk(const std::string strUtf8) { if (strUtf8.empty()) return ; // 先 UTF-8 轉(zhuǎn)寬字符 int nWideLen MultiByteToWideChar(CP_UTF8, 0, strUtf8.c_str(), -1, NULL, 0); if (nWideLen 0) return ; wchar_t* pWide new wchar_t[nWideLen 1]; MultiByteToWideChar(CP_UTF8, 0, strUtf8.c_str(), -1, pWide, nWideLen); pWide[nWideLen] L\0; // 寬字符轉(zhuǎn) GBK int nGbkLen WideCharToMultiByte(CP_ACP, 0, pWide, -1, NULL, 0, NULL, NULL); if (nGbkLen 0) { delete[] pWide; return ; } char* pGbk new char[nGbkLen 1]; WideCharToMultiByte(CP_ACP, 0, pWide, -1, pGbk, nGbkLen, NULL, NULL); pGbk[nGbkLen] \0; std::string strGbk(pGbk); delete[] pWide; delete[] pGbk; return strGbk; } // GBK 轉(zhuǎn) UTF-8 std::string GbkToUtf8(const std::string strGbk) { if (strGbk.empty()) return ; int nWideLen MultiByteToWideChar(CP_ACP, 0, strGbk.c_str(), -1, NULL, 0); if (nWideLen 0) return ; wchar_t* pWide new wchar_t[nWideLen 1]; MultiByteToWideChar(CP_ACP, 0, strGbk.c_str(), -1, pWide, nWideLen); pWide[nWideLen] L\0; int nUtf8Len WideCharToMultiByte(CP_UTF8, 0, pWide, -1, NULL, 0, NULL, NULL); if (nUtf8Len 0) { delete[] pWide; return ; } char* pUtf8 new char[nUtf8Len 1]; WideCharToMultiByte(CP_UTF8, 0, pWide, -1, pUtf8, nUtf8Len, NULL, NULL); pUtf8[nUtf8Len] \0; std::string strUtf8(pUtf8); delete[] pWide; delete[] pUtf8; return strUtf8; }邏輯說明MultiByteToWideChar第一個(gè)參數(shù)CP_UTF8表示源編碼是 UTF-8CP_ACP表示當(dāng)前系統(tǒng) ANSI 代碼頁中文 Windows 下是 GBK。-1表示字符串以 null 結(jié)尾函數(shù)會自動計(jì)算長度。參數(shù)說明nWideLen和nGbkLen是轉(zhuǎn)換后的字符數(shù)分配時(shí)加 1 給結(jié)尾符。注意 VC6.0 的new wchar_t[n]在 n 很大時(shí)可能失敗建議對超過 1MB 的字符串分塊處理。這兩個(gè)函數(shù)沒有依賴任何 C11 特性VC6.0 直接編譯通過。3.3 解析中文 JSON 并正確輸出的完整案例假設(shè)你從文件讀到一個(gè) UTF-8 編碼的 JSON內(nèi)容包含中文姓名和地址。用以下代碼解析并轉(zhuǎn)成 GBK 輸出到控制臺#include stdafx.h #include json/json.h #include fstream #include iostream #include string // 聲明前面寫的轉(zhuǎn)換函數(shù) std::string Utf8ToGbk(const std::string strUtf8); std::string GbkToUtf8(const std::string strGbk); int main(int argc, char* argv[]) { // 讀取 UTF-8 JSON 文件 std::ifstream ifs(data.json, std::ios::binary); if (!ifs.is_open()) { std::cout open file failed std::endl; return -1; } std::string strJson((std::istreambuf_iteratorchar(ifs)), std::istreambuf_iteratorchar()); ifs.close(); Json::Value root; Json::Reader reader; if (!reader.parse(strJson, root)) { std::cout parse error: reader.getFormatedErrorMessages() std::endl; return -1; } // 讀取中文字段此時(shí)是 UTF-8 字節(jié) std::string strNameUtf8 root[name].asString(); std::string strAddrUtf8 root[address].asString(); // 轉(zhuǎn)成 GBK 再輸出避免控制臺亂碼 std::string strNameGbk Utf8ToGbk(strNameUtf8); std::string strAddrGbk Utf8ToGbk(strAddrUtf8); std::cout name: strNameGbk std::endl; std::cout address: strAddrGbk std::endl; // 如果要寫回 JSON先把 GBK 轉(zhuǎn)回 UTF-8 Json::Value outRoot; outRoot[name] GbkToUtf8(strNameGbk); outRoot[address] GbkToUtf8(strAddrGbk); Json::StyledWriter writer; std::string strOut writer.write(outRoot); std::ofstream ofs(out.json, std::ios::binary); ofs.write(strOut.c_str(), strOut.size()); ofs.close(); return 0; }邏輯說明std::ifstream以二進(jìn)制模式讀取避免 VC6.0 文本模式把\r\n轉(zhuǎn)換導(dǎo)致 JSON 解析失敗。std::istreambuf_iterator在 VC6.0 下可用但需要#include iterator。參數(shù)說明data.json必須是 UTF-8 無 BOM 格式如果帶 BOMJSONCPP 會在第一個(gè)字符處報(bào)錯需要手動跳過前三個(gè)字節(jié)。StyledWriter輸出的字符串是 UTF-8寫文件時(shí)用二進(jìn)制模式否則 VC6.0 會插入\r。這一步跑通后中文解析和輸出就不會亂碼了。4. 避坑與排查VC6.0 JSONCPP 的 5 個(gè)典型翻車現(xiàn)場4.1 編譯報(bào)錯 C2440無法從 const char* 轉(zhuǎn)換為 char*現(xiàn)象編譯json_value.cpp時(shí)大量報(bào) C2440指向c_str()返回值。原因VC6.0 的std::string::c_str()返回const char*但 JSONCPP 老版本內(nèi)部有些函數(shù)參數(shù)是char*沒有 const 修飾。解決在json_value.cpp里找到報(bào)錯行把c_str()強(qiáng)轉(zhuǎn)成(char*)或者把函數(shù)參數(shù)改成const char*。注意不要全局替換只改報(bào)錯的那幾處。4.2 解析中文返回空字符串或問號現(xiàn)象root[name].asString()返回空或???。原因JSON 文件本身是 GBK 編碼但 JSONCPP 按 UTF-8 解析遇到 GBK 雙字節(jié)會當(dāng)成非法 UTF-8 序列解析失敗或截?cái)唷=鉀Q統(tǒng)一把 JSON 源文件轉(zhuǎn)成 UTF-8 無 BOM或者用GbkToUtf8先把整個(gè) JSON 字符串轉(zhuǎn)成 UTF-8 再parse。我一般會在讀取文件后立刻判斷編碼如果是 GBK 就先轉(zhuǎn)。4.3 輸出到 MFC 編輯框仍然亂碼現(xiàn)象控制臺正常但SetWindowText到 MFC 編輯框顯示亂碼。原因MFC 編輯框在_MBCS下期望 GBK但你傳入的是 UTF-8 的std::string。解決在SetWindowText之前調(diào)用Utf8ToGbk并且確保SetWindowText的參數(shù)是CString時(shí)用CString(strGbk.c_str())構(gòu)造。如果編輯框是 Unicode 的則不要轉(zhuǎn) GBK直接CString(strUtf8.c_str())但需要工程支持_UNICODE而 JSONCPP 在_UNICODE下編譯又是另一個(gè)坑建議統(tǒng)一用_MBCS。4.4 大 JSON 解析時(shí)程序崩潰或內(nèi)存泄漏現(xiàn)象解析超過 1MB 的 JSON 時(shí) VC6.0 程序無響應(yīng)或退出。原因VC6.0 的std::string在頻繁拼接時(shí)性能極差JSONCPP 內(nèi)部大量使用std::string拼接導(dǎo)致內(nèi)存碎片和棧溢出。解決把 JSON 拆成多個(gè)小對象分次解析或者改用Json::Reader::parse的流式接口如果版本支持。另外檢查json_value.cpp里std::auto_ptr改成裸指針后是否在異常路徑漏了 delete建議用std::auto_ptr的替代類封裝。4.5 寫入 JSON 時(shí)中文變成 \uXXXX 轉(zhuǎn)義現(xiàn)象StyledWriter輸出的中文變成\u4e2d\u6587。原因JSONCPP 默認(rèn)對非 ASCII 字符做 Unicode 轉(zhuǎn)義這是符合 JSON 標(biāo)準(zhǔn)的但有些下游系統(tǒng)不認(rèn)。解決在json_writer.cpp里找到writeString函數(shù)把轉(zhuǎn)義邏輯改成直接輸出原始字節(jié)。具體是注釋掉if (c 0x20 || c 0x7f)分支里的sprintf轉(zhuǎn)義直接*s c。注意這樣輸出的 JSON 仍然是 UTF-8 字節(jié)下游按 UTF-8 解析即可。5. 進(jìn)階把 JSONCPP 封裝成 VC6.0 可復(fù)用的配置讀寫類5.1 封裝目標(biāo)與接口設(shè)計(jì)在 VC6.0 項(xiàng)目里你不可能每次解析都寫一遍Reader和編碼轉(zhuǎn)換。我一般會封裝一個(gè)CJsonConfig類提供LoadFromFile、GetString、SetString、SaveToFile四個(gè)方法內(nèi)部自動處理 UTF-8/GBK 轉(zhuǎn)換和 JSONCPP 的Json::Value生命周期。這樣業(yè)務(wù)代碼只需要config.GetString(name)不用關(guān)心底層編碼。下面是一個(gè)精簡版實(shí)現(xiàn)// JsonConfig.h #ifndef __JSON_CONFIG_H__ #define __JSON_CONFIG_H__ #include string #include json/json.h class CJsonConfig { public: CJsonConfig(); ~CJsonConfig(); bool LoadFromFile(const std::string strFilePath); bool SaveToFile(const std::string strFilePath); std::string GetString(const std::string strKey, const std::string strDefault ); void SetString(const std::string strKey, const std::string strValue); int GetInt(const std::string strKey, int nDefault 0); void SetInt(const std::string strKey, int nValue); private: Json::Value m_root; bool m_bDirty; }; #endif // __JSON_CONFIG_H__邏輯說明m_root是Json::Value對象默認(rèn)構(gòu)造為 nullLoadFromFile成功后變成 object。m_bDirty標(biāo)記是否有修改SaveToFile時(shí)決定是否寫盤。參數(shù)說明strKey支持a.b.c形式的嵌套路徑需要在GetString里按.分割逐層查找。VC6.0 的std::string::find和substr可用但注意npos的判斷。5.2 實(shí)現(xiàn) LoadFromFile 與編碼自動識別// JsonConfig.cpp #include stdafx.h #include JsonConfig.h #include fstream #include iterator // 聲明編碼轉(zhuǎn)換函數(shù) std::string Utf8ToGbk(const std::string strUtf8); std::string GbkToUtf8(const std::string strGbk); CJsonConfig::CJsonConfig() : m_bDirty(false) { } CJsonConfig::~CJsonConfig() { } bool CJsonConfig::LoadFromFile(const std::string strFilePath) { std::ifstream ifs(strFilePath.c_str(), std::ios::binary); if (!ifs.is_open()) return false; std::string strContent((std::istreambuf_iteratorchar(ifs)), std::istreambuf_iteratorchar()); ifs.close(); // 簡單判斷如果包含非 ASCII 字節(jié)且不是合法 UTF-8則按 GBK 轉(zhuǎn) // 這里簡化處理先嘗試直接解析失敗再轉(zhuǎn) Json::Reader reader; if (!reader.parse(strContent, m_root)) { // 嘗試 GBK 轉(zhuǎn) UTF-8 后再解析 std::string strUtf8 GbkToUtf8(strContent); if (!reader.parse(strUtf8, m_root)) { return false; } } m_bDirty false; return true; }邏輯說明先按原始字節(jié)解析如果失敗再嘗試 GBK 轉(zhuǎn) UTF-8。這樣兼容兩種編碼的 JSON 文件。參數(shù)說明std::istreambuf_iterator在 VC6.0 下需要#include iterator且讀取大文件時(shí)可能較慢建議加一個(gè) 1MB 的大小限制。reader.parse會清空m_root再填充所以不需要手動 reset。5.3 GetString 的嵌套路徑查找與默認(rèn)值處理std::string CJsonConfig::GetString(const std::string strKey, const std::string strDefault) { // 按 . 分割路徑 std::vectorstd::string vecKeys; std::string strTemp strKey; std::string::size_type pos 0; while ((pos strTemp.find(.)) ! std::string::npos) { vecKeys.push_back(strTemp.substr(0, pos)); strTemp strTemp.substr(pos 1); } vecKeys.push_back(strTemp); // 逐層查找 Json::Value* pNode m_root; for (size_t i 0; i vecKeys.size(); i) { if (!pNode-isObject() || !pNode-isMember(vecKeys[i])) { return strDefault; } pNode ((*pNode)[vecKeys[i]]); } if (!pNode-isString()) return strDefault; // 返回 GBK 編碼方便 MFC 顯示 return Utf8ToGbk(pNode-asString()); }邏輯說明vecKeys存儲分割后的路徑段pNode從m_root開始逐層下鉆。isMember檢查鍵是否存在isObject確保當(dāng)前節(jié)點(diǎn)是對象。參數(shù)說明strDefault在路徑不存在或類型不匹配時(shí)返回。返回前調(diào)用Utf8ToGbk因?yàn)?JSON 內(nèi)部是 UTF-8而 VC6.0 業(yè)務(wù)層通常用 GBK。如果業(yè)務(wù)層需要 UTF-8可以再加一個(gè)GetStringUtf8方法。5.4 驗(yàn)證封裝類一個(gè)完整的讀寫測試寫一個(gè)測試函數(shù)加載 JSON、讀取中文、修改后再保存驗(yàn)證整個(gè)鏈路void TestJsonConfig() { CJsonConfig config; if (!config.LoadFromFile(config.json)) { std::cout load failed std::endl; return; } // 讀取中文GetString 內(nèi)部已轉(zhuǎn) GBK std::string strName config.GetString(user.name, unknown); std::cout name: strName std::endl; // 修改并保存 config.SetString(user.name, 測試用戶); config.SetInt(user.age, 30); if (config.SaveToFile(config_out.json)) { std::cout save ok std::endl; } }邏輯說明SetString內(nèi)部需要把 GBK 轉(zhuǎn)回 UTF-8 再存入Json::ValueSaveToFile用StyledWriter輸出。參數(shù)說明config.json和config_out.json都用二進(jìn)制模式讀寫。測試時(shí)先準(zhǔn)備一個(gè)包含{user:{name:張三,age:25}}的 UTF-8 文件運(yùn)行后檢查config_out.json是否中文正常。如果輸出正常說明封裝類可用。5.5 一個(gè)我常犯的錯誤忘記處理 BOM最后說一個(gè)我踩過的坑UTF-8 文件帶 BOM 時(shí)JSONCPP 解析會在第一個(gè)字符報(bào)錯錯誤信息是* Line 1, Column 1 Syntax error: value, object or array expected。我一開始以為是 JSON 格式問題查了半天才發(fā)現(xiàn)是 BOM。解決辦法是在LoadFromFile里讀取內(nèi)容后判斷前三個(gè)字節(jié)是否為0xEF 0xBB 0xBF如果是就strContent strContent.substr(3)。這個(gè)判斷要放在解析之前且對 GBK 文件不生效?,F(xiàn)在我的習(xí)慣是所有 JSON 文件保存時(shí)都選“UTF-8 無 BOM”并且在代碼里加一行 BOM 檢測作為后悔藥。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月在线| 丁香五月色五月| 亚洲精品国产成人AV在线| 色五月综合网| 九月婷婷在线观看| 99热这里| 黄色AV日韩| 欧美又粗又大一区二区在线观看| 五月丁香婷婷啪啪网| 99久视频| 五月天激情网图片| 激情五月天色婷婷| 插插插色综合网| 五月天婷婷激情在线色图| 九九成年视频| 99ER热精品视频| 色婷婷狠狠| 五月丁香久久精品在线观看| AV成人在线播放| 亚洲人人操| 亚洲热久久| 久久精品99| 欧美熟女视频 色婷婷| 午夜丁香综合婷婷| 婷婷社区五月天| 六月色日韩| 日日操夜夜操中国无码| 亚洲AV成人在线观看| 91无码视频| 视频色色色色色色| 日韩十国产极品久久| 丁香婷婷情色五月天| 9久精品视频| 另类婷婷五月天啪帕帕| 久久国产一区二区三区| 欧美操人| 天天做天天爱天天高潮| 无码人妻少妇色欲AV一区二区| 九色啦蜜臀| 呦呦视频无码播放| 丁香五月区| 国产日日夜夜操| 99免费成人网| 99操| 中文网AV| 久久久思思热| 日本丁香五月婷婷| 丁香婷五月| 五月天日日操夜夜操| 午夜色丁香| 婷婷五月丁香第四色超碰在线| 狠狠色婷婷7777久| AV九九| 久久综合人妻| 老师的粉嫩小又紧水又多A片视频| 色五月琪琪| 色婷婷AV在线| 五月丁香777| 超碰在线人妻| 中文字幕无码人妻少妇免费视频 | 99热免费精品热久久66| 色婷婷精品小视频| 99久久综合精品五月天| 九九热免费| 亚洲经典小视频| 色五月色五天色情网| 日韩一66精品| 婷婷五月天激情诱惑| 激情网婷婷婷| 91超级碰在线| 99无码视频| 五月婷婷激情综合| 黄色av网站在线免费播放| 内射 无码 伊人| 丁香五月激情五月色综合| seuuu婷婷| 丁香六月丁香婷婷激情| 色激情五月| 色欲九区| 天天爽人人爽| 天天射射夜| 色综合久久久久久久久五月| 综合99久久天天综合| 超碰二区| 日韩黄色影院| 九九99精品视频| 97人人操人人爽| 亚洲欧洲色色| 丁香五月婷婷天激情| 久久九九99亚洲国产久精综合| 99色免费视频| 亚洲激情五月| 襙逼网| 天天天添天天操| 久久99热久久99精品| 天天爱综合网| 人妻熟人中文字幕一区二区| 香蕉大综综综合久久| 熟女网站久久| 丁香五月婷婷激情中文| 欧美激情综合色综合啪啪五月| 久久丁香综合| 蜜臀AV在线观看| 91 久热| 色综合狠狠色| 天天日天天做天天操| 99在线精品视频| 色婷婷小说| 久久精品99国产精品日本| 超碰啪啪网| 大香蕉五月天婷婷丁香91| 色就是色婷婷五月亚洲激情| 色色亚洲五月天| 激情五月天婷婷丁香| 五月丁香六月片| 97影院一级片| 99爱在线视频| www.婷婷五月.com| 五月丁香婷婷激情久久| 丁香成人五月天| 99热伊人综合| 思思综合热| 成人网址在线观看| 久久婷婷人人| 亚洲这里只有精品| 色婷婷av综合网| 五月婷婷激情网| 欧美电影在线播放| 激情AV中文| 色丁香综合影院| 狠狠色狠狠| 日韩黄在免| 91婷婷| 久久精品视频在这里有| 久久五月婷天天干| 天天艹夜夜爽| 成人国产欧美大片一区| 噜噜色五月| 六月婷婷国产| 色综合99无码 | 日日狠狠久久偷偷四色综合免费| 欧美成人AAA片一区国产精品| 97热这里精品在线视频| 日韩黄色电影| 五月天婷综合| 日本超碰在线| 天天插天天插天天操| 婷丁香五月天| 任你爽免费视频| 五月天亭亭俺也| 欧美成人猛片AAAAAAA| 九九综合九九| 久青草影院| 九九碰九九爱97| 少妇大叫太大太粗太爽了A片| 激情综合在线观看| 成人丁香五月| 性婷婷| 色屌丝中文字幕| 在线另类视频| 91久操| 91精品婷婷国产综合| 五月草影视| 91妻人人爽人人看片| 婷婷基地成人五月天| 99色热视频| www.99热在线| 狠狠做深爱婷婷久久综合一区| 丁香五月婷婷亚洲综合精品| 日本三级韩三级99久久| 婷婷开心激情综合五月天| 午夜性做爰电影| 99小精品| 色天使色综合| 日良久久| 久久婷婷五月综合色播| 久热精彩视频98| 久久五月网| 少妇真实被内射视频三四区| 婷婷国产成人| 丁香六月婷婷一区| 狠狠色综合图片| 五月婷婷 激情五月| 超碰在线个人观看| 丁香六月婷婷色XXXXX| 久久激情视频| 99婷五月| 伊人91| 色色色视频| 中文字幕有多少字| 中文久久婷婷| 五月天四色房丁香| 五月婷婷偷拍| 国产69久久久欧美黑人A片| 九九热经典视频在线观看| 中文字幕五月久久婷婷| 色热久| 激情色中文| 亚洲五月天综合| 国产又爽又猛又粗的视频A片| 色婷婷五月天激情综合| 一起草无码| 五月激情啪啪啪| 伊人五月婷婷| 色欲九区| 大香蕉视频婷| 台湾无码A片一区二区| 人人亚洲| 久久新地此| 久久机热/这里只有精品| 99区视频| 久久加勒比| 激情丁香五月天| 五月天成人在线播放丁香| 色爽九九| www网站在线观看| 激情综合五月丁香| 五月丁香六月婷婷姐| 婷婷色综合| 超级碰 久久9| 国产精品涩涩涩视频网站| 五月婷婷啪| 99惹在线精品免费观看| 超碰在线超碰| 九九热内射| 天天插天天爽| 九九99免费视频| 欧美精品熟女一区二区| 五月色欧美| 另类综合激情| 4438成人电影| 26uuu| 夜夜嗨一区二区三区直播内容| 操日视频| 狠狠狠色激情综合适合| 五月婷婷色激情| 婷婷五月天受日本法律保护| 国产av基地| 日操熟女| 色在线免费观看| 丁香五月天电影| 婷婷中文字幕网| 1024日韩| 色五月丁香总合网| 久久婷婷五月天激情新地址| 五月色色网| 亚洲第二AV| 色婷网| 婷婷色在线视频| 五月天婷婷视频30| 深爱激情五月天色婷婷| 噜噜噜噜噜日本视频| 久久婷婷激情| 国产1区2区3区在线观| 超碰97免费在线| 狠狠 久久| 日本色婷婷| 日韩成人精品中文字幕| 激情五月综合| 99热国产免费| 色情综合网| 五月天久久久| 色人久久| 中文字幕一色哟哟哟哟| 丁香五月亚洲综合丝袜| 午夜69成人做爰视频| 天天日天天摸| 国产又色又爽又黄又免费| 色色射| 伊人久久艹| 五月天激情无码| 精品成人a v无码内射| 91久久九九| 大香蕉久久视频久久视频| 亚洲亚洲人成综合网络| 91夫妻网站九色| 五月天婷婷色综合| 人人操人人爽成人AV| 中文字幕网站在线观看| 色综合九九| 精品五月视频婷婷在线观看| 五月丁香在线国产| 九九操综合网| 色五月中文网| 深爱综合网| 色色色热| 91精品视频男人的天堂| 另类专区在线观看| 一个色的综合| 日韩色情亚洲五月天婷婷| 五月综合精品| 婷婷五月天AV| 五月丁香婷婷综合网| 色色色色色色色色网站| 午夜微拍福利| 久久9RE热视频精品98| 婷婷久久99| 永久思思热在线| 碰碰91| 亚洲精品操一操、噜一噜、摸一摸、爽 | 99无码| 99∨VTV| 久久99大| 丁香五月自拍| 五月六月伦理| 天天射美女| 91爱操| 久久思思热| 午夜激情四射影院| 色八月婷婷| 人妻VideOssS人妻| 天天色综网| 色哟呦av| 99婷婷| 开心五月婷| 激情久久肏屄视频| 婷婷字幕在线| 五月激情丁香久久综合网| 天天射综合网夜夜操| 五月丁香久久久久| 少妇人妻人伦A片| 综合九九久久| 99热在线观看这里只有精品| 国产这里只有精品| 激情综合色图| 成人五月天色天堂| 激情五月综合网最新| 中文字幕乱码亚洲精品一区| 日本色道视频网站| av在线观看网站| 成人 在线观看国产| 欧美大香蕉视频| 99成人小视频| 男女啪啪做爰高潮无遮挡| 97干视频在线| 激情五月婷黄版| 思思久久99热只有频精品66| 开心婷婷五月天综合| 777色色色| 国产成人精品一区二区三区视频| 六月丁香婷婷五月天| 色色COm| 97碰超级人人看| 成人 九九九九| 日在线V视频在线播放| 婷婷金品综合视频| 91AV婷婷| 九九色综合网| 久久婷婷五月天激情四射| 午夜无码精品色综合久久| 色婷婷综合久久久久| 激情综合网站| 亚州操人在线视频| 丁香五月婷婷亚洲激情四射| 99国产视频网| 丁香五月婷婷少妇| 五月天婷婷影院影院观看| 99国产精品久久久久久久久久久| 99久久黄色顶级视频| 色欧洲| 97精品综合| 91婷婷丁香五月天免费视频网站| 天天射影院| 热99国产精品| 99热最新| 六月婷婷六月天天在线免费| 丁香五月激情五月| 九九激情网| 婷婷社区五月天| 激情伊人六| 九九99九九99九九99视频网| 91日本在线| 激情综合区| 99re久热只有精品6在线直播.com| 婷婷五月丁香伊人| 日本天堂爱爱| 五月婷婷六月丁香| 婷婷丁香五另类网站| 久久99婷婷| 国产欧美第五十五页| 大香蕉啪啪| 久久受www免费人成| 婷婷五月噜噜| 色婷婷五月丁香色| 成人做爰高潮A片免费视频| 丁香大香蕉| 久久三级视频| 国产精品第一国产精品| 色色丁香激情五月| 婷婷激情视频| 综合色色网| 影音先锋xfplay资源男人网| 婷婷五月色播天| 亚洲综合色色色| 日本在线wwww| 开心激情网在线| 91嫩草久久| 亚洲成色综合网站免费观看| 婷婷她六月天| 婷婷色五月天色| 人妻久久久久久久| 婷婷五月天激情开心网| 中文字幕乱码亚洲精品一区| 日韩黄在免| 激情综合五月丁香| 久草视频一,二三四| 天天久久婷婷| 综合五月天完整| 激情内射人妻1区2区3区| www.狠狠| 五月丁香777| 色女人久久| 五月婷婷六月丁香色| 超碰婷婷色| 久久色在线视频| 六月婷婷色综合| 99热1| 丁香五月天堂网| 综合九九久久| 丁香五月人妻| 丁香五月激情啪| 丁香五月先锋| 亚洲色色色色色色色色色| 日本三级日本三级99| 麻豆雪千夏| 99色| 99热18| 欧美日韩成人在线| 97五月天婷婷午夜| 91聚色综合网| 色吧五月婷婷| 欧洲S级在线观看| 五月天激情小说| 五月天婷婷AV| 久热这里只有精品99re| 丁香六月婷婷缴情欧美| 涩丁香| 综合五月激情网| 玖玖@三月天天丁香婷婷| 婷婷五月丁综合| 日本97人人| 五月天婷婷在线观看| 国产综合丁香五月天| 综合网天天| 香蕉影院色| 五月成人天| www.色综合.com| 成片免费播放| 五月丁香色五月| 五月婷婷综合成人| 亚洲情色一区| 五月天婷婷三级黄| 丁香九色不卡aaa| 久久精品人妻| 嫩草AV久久伊人妇女超级A| 超碰久热| 五月丁香六月婷婷综合网站| 亚韩在线视频| 五月欧美色色五月| 九九av在线| 久婷婷| 欧美色色色色色色色色色色影视| 色婷婷精| 日韩AV大全| www.五月天婷婷姐姐| 99re资源在线视频导航| 亚洲视频五区| 日日狠狠久久偷偷四色综合免费| 五月婷啪| 七月婷婷色香综合网| 思思热在线播放| 五月婷婷三级| 婷婷大香焦| 99热| 俺也高清无码高清视频| 婷婷久久久| 婷婷五月天免费99| www.99视频| 五月综合激情综合久| 久久大香免费| 成人免费120分钟啪啪| 亚洲婷婷欧美婷婷| 日日干夜夜撸夜夜骑| 视频在线免费观看欧洲乱码| 99热99在线| 五月丁香婷婷综合网| site:hcxsz888.com| 激情五月婷婷综合网| 日本VA视频| www.天天干.com| AV大片在线观看| 国产成人99久久亚洲综合精品| 丁香五月激情性色郤| 亚洲天堂爱爱| 久久99免费视屏| 国产熟女一区二区三区五月婷| 丁香五月激情性色郤| 97操在线视频| 青青草轻轻操| 五月天久久www| 色狠狠综合网| 激情丁香五月| 丁香六月天婷婷色| 免费无码毛片一区二区A片| 99精品免费视频| 国产综合激情五月久久| 狠狠干综合| 4438国产免费看| 操人妻AV| 伊人激情| 婷婷俺去也| 久久久久婷| 天天爽日日爽夜夜爽| 五月丁香综合网色欲| 五月婷婷丁香啪啪| 九九超日本| 色婷婷电影网| 亚洲综合激情五月久久| 91操网| 狠狠干夜夜干| 五月五婷婷| 我爱va亚洲va52| 亚洲五月天综合色| 久久久五月五丁香| 精品久久婷婷| 色婷婷五月影院| www.9色色色| 亚洲午夜在线视频| 日本不卡高字幕在线2019| 丁香九月综合激情| 影音先锋一区二区三区| 丁香 久久| 五月成人网站| 人人色婷婷| 五月丁香六月激情欧美综合| 天天爽天天摸人妻综合网| 五月丁香婷成人网| 日日操夜夜操狠狠操| 99re6热在线精品视频播放速度| 亚洲AV中文在线| 成人永久免费视频在线观看| 成人在线日韩欧美| 婷婷成人AV| 亚洲另类av| 亚洲综合成人网站| 色婷婷国产精品综合在线观看| 色婷婷在线影院| 2018夜夜草| 色欲色欲久久宗合网| 久99视频| 色五月激情五月| 99热最新| 色墦五月丁香| 色五月婷婷在线观看第一页舔| 99国产在线精品视频| 蜜臀AV在线观看| 97人碰人操| 激情九月丁香婷婷| 日韩性爱无码| 激情综合99| 亚洲欧洲国产精品| 丁香无五月网| 丁香六月视频免费观看| 天天骑天天操| 久久久久久综合88| 午夜色婷婷| 五月婷婷激情网| 亚洲精品久久久无码| 综合AV网| 国产九九一区二区三区| 色狠狠综合| 99性视频| 秋霞电影理论| 79精品视频在线观看,| 亚洲最大五月六月丁香婷婷| 婷婷六月综合基地| 天天射影院| 亚洲区视频| 激情AV| 五月丁香综合色婷婷| 99热99| 碰碰91| 久er7久热| 婷婷开心六月| 欧美一级色| 欧美三级巜人妻互换| 99艹精品在线观看| 婷婷中文字幕| 丁香五月六月激情久久| 激情综合啪啪| 91夫妻网站九色| 久99热在线观看| 婷婷免费成人视频| 色五婷婷在线视频| 五月婷婷AV| 97碰精品| 五月丁香| 思思久久精品| 777精品久无码人妻蜜桃| 天啪天啪天啪天啪| 久鲁鲁色网 | 色五月涩涩婷婷蜜桃| 丁香六月无码| 99这里| 99国产97在线,| 五月婷婷激情综合| 91色情播放| 激情网五月天| 亚洲精品久久久久久久久久吃药 | 亚洲国产精品成人午夜| 九色91国产| 日本在线噜噜| 永久精品| 玖玖九九超碰| 亚州激情在线视频| 黄色三级日本| 欧美日韩中国| www,婷婷五月天777me,com| 狠狠99| 玖玖综合色区在线观看| 色爱综合视频| 五月天伊人| 日韩艹比| 激情五月天噢美| 欧美日本国产欧美日本韩国99| 99精品国产在热久久| 任你日视频| 综合五月天完整| 极品少妇高潮啪啪AV无码| 91成人看片| 欧美狠狠地| 激情小说五月天| 色综合久久综合中文综合网| 激情五月色播五月| 丁香五月久久| 丁香九月婷| 99只有这里有精品在线视频| 开心婷婷五月综合| 亚洲综合色丁香婷婷六月| 亚洲无码yw| 久久ri精品视频| 丁香六月毛片| 欧美黄色一级录像| 五月天社区| 99九九视频| 91久草五月天婷婷| 香蕉AV777XXX色综合一区| 欧美性色A片免费免费观看的 | 国产精品涩涩涩视频网站| 综合激情婷婷| 日本三级黄色大片| 五月天开心色情网| 九色PORNY自拍成人精彩视频| 国产露脸150部国语对白| 激情综合4月| 久久538| 欧美色图天堂网| www.色五月.com| 九色无码| 综合网色| 丁香五月天导航| 九九激情网| 综合婷婷久久| 亚洲婷婷免费| 亚洲俩性性爱图片久久第六页 | 色综合久久99色| 五月丁香啪啪综合| 狠狠久久婷五月| 中文AV在线播放| 一区视频网站| 99色在线| 综合在线网| 久9精品视频| 亚洲网视屏| 五月丁香六月情| 亚洲国产色婷婷| 九九综合久久| 伊人婷婷五月| 在线不卡的视频| 五月丁香五月综合欧美| 五月丁香啪啪综合网| 久久久激情视频| 婷婷五月大| 色99视频| 男女久久婷婷五月天| 成人AV片播放| 99久精品视频| 亚洲婷婷在线播放十月| 能看的AV| 九九热精品6| 大香AV| 婷婷伊人网| 国产1区2区3区| 婷婷午夜天| 好好日激情五月天| 99热免费18| 六月丁香婷婷综合狠狠爱夜夜爱| 久操大香蕉| 午夜69成人做爰视频| 视色综合| 成人 视频免费观看网站| 五月激情小说| 。久久久久久久久久久久久久人妻| 伊人成综合五月婷婷| 这里只有久久精99| 亚洲av免费在线| 性一交一乱一交A片久| 久久婷婷五月综合啪| 99人人操人人操人人精| 久久久婷| www,26uuu,c0m,色情| 丁香婷婷五月激情| 蜜桃五月天| www.五月.com| 五月婷婷色播视频| txt五月激情四射网综合俺也来了| 色噜噜五月天| 色五月激情五月丁香五月婷婷啪啪综合| 丁香婷婷九月在线| 天天搡日日搡aaaaⅩ| 丁香六月高清视频| 欧美视频五区| 69凹凸成人综合网| 色丁香五月婷婷| 日本熟女一区二区| 久久9视频| 爱穴久久| 99这里只有| 丁香五月在线看| 五月婷婷色色| WwW色婷婷| 99日本在线| 激情五月婷婷中文字幕| 天天久久狠狠色综合| 日本在线播放97| 亚洲高清在线| 亚洲 在线 性爱 | 五月丁香六月综合基地| 国产AV一区二区三区最新精品| 五月婷婷啪啪| 操操操操操电影网| 丁香五月综合久久八| 视频久久9| 97色干在线观看| 五月色网| 涩涩网五月天| 天天爽天天日人人爱| 9999热在线免费观看| 天久综合91综合首页| 99热最新| 欧洲色| 99视频一区| 98毛片| 伊人玖玖精品| 99色免费在线观看| 四色五月婷婷| 久久人妻熟女一区二区| 99爱视频在线观看这里只有精品| 十一月婷婷激情四射| 99色视频| 网色99| 天天操天天日天天操| 色9色| 久久久中文| 五月丁香久久网| 五月丁香久久色| Av在线不卡一区| 色情终和网| 国产真人做爰视频免费| 人人摸人人| 激情九月婷婷| 五月天久久网站| 婷婷五月色网| 色婷丁香五月| 婷婷四月 成人 狠狠干| 婷婷综合网站| 久久精品婷婷| 五月激情啪啪啪| 亚洲色图45p| 五月丁香少妇| 一本色道久久综合狠狠躁小说| 啪啪操网| 色色网91| 无码色综合| 色色网91| 九月色婷婷婷| www.激情五月天.com| 色www99| 99热九九九九| www.99热精品99.com| 中文字幕91,综合| 国产免费av网站| 超pen个人视频97| 另类小说五月天| 亚洲五月天激情| 97干在线| 69超碰在线| 日日操夜夜擼| 91人妻九色大屁股| 国产色色小草视频| 91av视频在线观看最新网址| 婷婷五月激情在线| 日本三级色| 综合网啪| 超碰九九热| av色婷婷| WWW五月婷婷| wwccc久久久| 婷婷五月天欧美图片在线播放电驴| 天天拍夜夜爽日日| 五月天色婷婷成人| 久久婷婷亚洲| 色播五月婷婷| 久久久久久久人妻| 国产日日操夜夜操的肉棒视频| 思思精品久久艹| 国产五月天欧美色| 婷婷丁香色五月| 天天综合色丁香| 97色婷婷| 久久五月婷6 9| 色色色色色日韩午夜激情| 婷婷五月,偷窥偷拍网| 91碰碰视频| www.狠狠操.co m| 五月天伊人日日噜影片AV| 五月婷婷丁香综合网| 久久婷婷五月天| 天天艹夜夜艹| 艹B高清无码| 色综合狠狠色| 五月久久五月激情| 金品在线视频99| 九艹在线| 色婷婷五月天成人网| 精品亚洲国产成AV人片传媒| 开心五月网 | 久久丁香五月| 亚洲成av人影院| 久久久色情| 色欲av伊人久久大香线蕉影院| 日本在线免费中文com.| 色爱五月天| 九九99精品视频在线观看| 情欲禁地| 14色综合婷婷| 激情婷婷在线中文字幕| 五月婷无码| 九九热精品视频在线观看| 91蜜桃婷婷狠狠久久综合9色| 字幕网AV中文字幕| 97热精品| 99视频这里只有久久精品 | 久久性爱视频| 五月丁香色停停啪啪啪| 大香蕉啪啪| 六月丁香激情综合| 久久激情天堂| 影音先锋91网站在线观看| 国产精品久久99| Aα在线免费观看| 嫩BBB槡BBBB搡BBBB| 亚洲精品国产成人AV在线| 婷婷六月五月天综合| 丁香无五月网| 五月丁香精品| 操人91| 大操人妻| 五月婷婷丁香成人网| 五月激情影视| 婷婷99狠狠躁天天久久久九九九| 在线另类视频| 婷婷日日夜夜| 精品国产AV色一区二区深夜久久| 九九热精品99| 激情婷婷五月基地| 超碰在线人妻| 五月丁香啪啪综合| 久 久9 9 热 视 频| 五月婷婷色色| 综合色网站| 六月丁香婷婷六月激情综合| 久久xxxx| 91成人品| 人人人操| 99热全是精品| 丁香九月婷婷色| 深爱激情五月天| 高清av在线国产| 丁香五月综合在线| 成人va在线播放| 亚洲激情综| 色色色色网站| 婷婷六月成人| 五月天婷婷色播在线网| 国产精品美女| 亚洲啪视频| 色爱综合网| 亚洲色婷婷五月天| 99色免费观看全部| 五月丁香综合色婷婷| 色色五月婷| 黄色三级日本| 天天天天操| 天天天天天天天操| 九九热这里有精品23| 五月天婷婷午夜丁香| 婷婷六月伊人| 色久综合| 国产综合视频婷婷| 五月天婷婷色| 啪色综合| 丁香五月婷久久| 色婷婷精| 狠狠色噜噜色狠狠狠综合久久成人波 | 久久婷婷五月免费视频| 久久精品国产一区二区三区四区| 欧美欧盟性爱网| 五月天综合色| 伊人天堂婷婷| 五月天全国最大成人网| 强辱丰满人妻HD中文字幕| 久9热视频在线观看| 啪啪啪综合网| 婷婷五月天狠狠| 久草 tingting| 五月婷在线播放| 亚洲色五月婷婷| 色五月婷婷小说亚洲中文字幕组| 91丁香综合| 日本激情五月| 丁香五月停停av| 激情都市丁香婷婷| 色五月婷婷综合在线| 99热99久久| 国产婷婷五月天| 九九大香蕉黄色影院| 99爱视频在线| 婷婷六月天| AV大片在线观看| 久操综合| 婷婷五月天丁香| 五月开心深深爱激情综合 | 91九色在线| 日本91在线| 成人羞羞啪啪 全 视频| 中文字幕精品无码一区二区| 五月婷婷伊人久久| 亚洲一级AV在线免费播放| 狠狠干综合网| 亚洲Va成人| 深爱激情五月网| 五月的丁香六月的婷婷| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 色就是色婷婷五月亚洲激情| 被强行糟蹋的女人A片| 亚洲色色色色| 97伊人综合婷婷| www九九热| 激情久久久| 色偷偷AV亚洲男人的天堂| 天天射综合网夜夜操| 久久九九激情五月天| 成年人丁香五月| 色色婷婷丁香| www.超碰97| 日本婷婷在线| 色情五月丁香婷婷网| 色五月婷婷777| 婷婷丁香激情五月天色色| 任我鲁这里有精品视频| 五月丁香六月婷| 婷婷激情丁香六月| 97婷婷在线视频| 另类视频五月天| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 久久久婷| 五月婷婷69| 欧美99| 操逼电影免费看| 激情综合区| 好好干Av| 爆乳熟女-区二区三区| 大香蕉五月天婷婷| 久热这里只有精品66| 人人妻人人澡| 97日韩无套内| 五月色婷婷影院| 婷婷六月激情丁香| 五月婷中文字幕| 国产精品人成A片一区二区| 99视频在线精品| 99视频这里只有免费精品| 九九色中文| 五月激情综合美女久久| 思思99热热热99| 五月丁香A∨在线| 中文字幕在线免费观看视频| 天天干天天插| 激情纯色婷婷五月天在线不卡视频| 91人碰| 亚洲精品第一国产综合亚AV | 婷婷六月色开 | 婷婷五月激情基地| 99视频自拍| 99高级会所久久| 五月丁香婷婷网在线在线| 一级黄色片看看| 九九热这里只有精品5| 99热日| 少妇性按摩无码中文A片| 开心五月网 | 99小视频网站| 一本色道久久88综合日韩精品| 婷婷久久网| 九月激情综合| 日逼影音先锋男人AV资源站| 丁香五月久久| 天天日天天色| 99视频内射三四| 九九色99| 欧美色综合天天久久综合精品 | 五月丁香激情综合网| 天天爽天天干| 99网址在线观看| 日韩久久视频| 婷婷五月综合亚洲| 九月婷婷丁香| 99超碰在线免费| 99久99久| 久久婷五月婷| 五月婷婷啪啪网| 激情婷婷五月天| 五月婷久久草| 色婷丁香| 91天天操天天干天天射| 99网址在线观看| 最近免费中文字幕大全高清大全1| 九色PORNY9l原创自拍| 天天日日夜夜| 五月丁花六月丁香综合| 国产玖玖资源| 亚州精品久久久久AV无码| 91九色精品熟女内射| 婷婷久热| 日韩在线视频中文字幕| 色亭亭九月| 天天日色情| 久久黄色片| 色五月丁香婷婷久草| 激情欧美丁香五月| 五月天六月婷| 婷婷五月天欧美图片在线播放电驴| 五月色欧美| 五月丁香婷婷综合激情基地| 丁香五月第九色| 五月停停直播| 色五月激情问网站| 99热欧| 九九九九九无码| 亚洲天堂AV免费片| 五月天婷婷伊人| 丁香五月天婷婷中文| 青青草蜜臀| 夜夜操夜夜姧| 婷婷五月天视频在线观看| 久久九九99字幕| 99热这里有精品24| 婷婷五月天第四色| www.夜夜夜| 午夜精品777| 天天日,夜夜爽| 婷婷五月偷拍| 亚洲视频图片婷婷五月| 婷婷播5月| 99日在线视频| 色99在线视频| 国产激情久久| 中文字幕在线免费观看视频| 大香蕉AV在线| 26uuu成人网| 人人操91色| 成人网站av免费网站推荐| 丁香九月久久| 日韩av在线免费观看| 九九视频这里只有精品在线播放 | 久久激情五月网| 大香蕉人人人| 超pen个人视频97| 超碰在线成人| 婷婷六月情| 婷丁五月| 91.www综合| 少妇出轨做爰高潮A片| 久99久视频精品| CAOBIBI| 97碰碰视频在线观看免费| 另类图片激情五月天| 天天干、天天日日| 综合图片色色| 久久五月丁香| 婷婷成人小说综合| 精品人妻久久久久| 97操碰视频| 日日干日日| 亚洲色久| 俺也去五月婷婷丁| 操逼综合网| 丁香婷婷大香蕉| 久久婷婷五月综合色播| 国产成人99久久亚洲综合精品| 国产精品电影网| 99性爱| 亚洲欧美在线观看| 9色在线视频精品观看| 五月婷啪| 九九热思思热| 天天干天天做| 亚洲综合久| 国产精品天天狠天天看| 丁香五月综合首页| 久久色五月天| 99热国产这里只有精品| 91丨九色丨国产打屁股| 任你躁XXXXX麻豆精品| 少妇婷婷五月天| 五月天色官网| 丁香五月综合| 激情六月天| 人妻视频一区而且二区| 乱码操操| 免费视频这里只有精品| 久热九九| www.夜夜爱.com| 99免费视频久久| 丁香六月婷婷激情| 九九热免费视频| 啪啪视频99| 婷婷丁香五月天婷婷| 中文av网站| 疯狂做受XXXX高潮A片| 久久综合影院| 婷婷色色网| 天天综合在线网| 丁香六月激情综合网| 婷婷五月激情基地| 欧美久久网| 五月婷婷六月奇米网丁香| 99精品自拍| 五月婷婷六月丁香免费| 欧美性二区| 五月天天天综合| 色必久悠悠影院| 最新AV在线观看| 综合久久婷婷五月丁香| 丁香五月欧美| 五月婷婷综合天天操| 天堂婷婷五月在线| 欧美97色| 91热久| 九九一综合精品| 婷婷久久综合久| 婷婷五月天综合久久| 99视频九九热| 久9精品视频在线| 婷婷六月色丁香视频在线观看| 色综合天天| 国产做爰视频免费播放| 操人无码| 九九在线视频| HD久久精品视频| 婷婷五月激情欧美大胆视频| 婷婷五月激情小说| 精品99在线| 夜夜干夜夜操| 综合久久十三| 久久性爱视频免费| 丁香五月久久| 影音先锋色婷婷| 日本一毛片| jiZZdr| XX色综合| 久久五月天激情视频| 播播网色播播| 五月色婷| 成人婷99最新| 久热超碰| 中文字幕乱码亚洲精品一区| 欧美成人AAA片一区国产精品| 色色网91| 99亚色色色| 丁香五月婷婷在线观看| 久久婷婷国产| 国产精品久久..4399| 色色五月婷婷久久| 五月婷婷久| 婷婷五月丁香色色| 亭亭五月激情亚洲在线| 开心色色五月天综合| 久久午夜理论| 日本操B视频在线观看| 色丁香在线视频| 丰满少妇猛烈A片免费看观看 | 色五婷婷开心缴| 色噜噜五月丁香婷婷| 综合久久人妻| 久久天堂婷婷五月| 日日夜夜狠狠| 99久久97久久欧美综合网| 亚洲综合色网| 亚洲成人超碰| 亚洲综合五月天婷婷丁香| 久99久热| 久久激情网| 五月丁香综合网色欲| 中字幕视频在线永久在线观看免费| 人妻乱码久久久| 人妻熟人中文字幕一区二区| 精品综合久久久久久五月天| 激情五月天。| 婷婷五月天六月综合| 爱久久小说下载网| 思思国产99| 激情久久伊人| 五月天激情av| 99热精品网| 色婷婷丁香| 婷婷丁香社区网| 少妇出轨做爰高潮A片| 亚洲九九99精品视频在线播放| 久久久久久人妻| http://www.lingjunshare.com/ | 伊人久久丁香婷婷六月五月综合| 欧美日本97| 五月天婷婷基地综合网| 色欲婷婷五月天| 丁香成人五月天| 97福利视频| 天天爽天天摸| 九色亚洲| 丁香五月婷婷色综合基地| 丁香五月性| 97人人射| 啪啪91| 26.uuu丁香五月婷婷| 26UUU欧美| 伊人五月婷| 开心五月综合激情综合五月| 色婷婷精品视频| 九月av在线| 涩婷婷五月天| www.亚洲激情.com| 成人欧美Va| 人人干av| 亚洲色婷婷婷婷人人爽| 婷婷欠久少妇| 综合五月天| 五月停亭六月,六月停亭的英语| 丁香六月婷| 婷婷丁香一月| 97极品在线| 久久xx| 色综合日日| 婷婷综合五月天| 日韩99无码| 久热A|