A. json字元串中需要轉義的字元有哪些
題主記住一點,但凡會造成字元串被截斷、未關閉及包裹情況的字元,就必須進行轉義。
如「你好啊「小傢伙」」,「小傢伙」外部的雙引號和最外部的雙引號造成了包裹;
如「你好啊「小傢伙」,中間的雙引號未關閉且和前後兩個引號造成了混亂;
如果想進行在線調試和校驗的話 可以訪問網頁鏈接進行嘗試
B. C++序列化json字元串對Unicode有哪些特殊處理
根據 ECMA-404 [1] 第 7 節:
All characters may be
placed within the quotation marks except for the characters that must be escaped: quotation mark (U+0022),
reverse solis (U+005C), and the control characters U+0000 to U+001F. U+0000 至 U+001F 字元是必須轉義,當中除 BS、HT、LF、FF、CR 有特殊轉義符,其他都需要轉義成 "\uXXXX" 的形式。
Any code point may be represented as a hexadecimal number.
所有碼點可以表示為"\uXXXX" 形式。對於 U+2028 和 U+2029,[1] 並不要求轉義。可能是在某些應用中有此需求(如有bug)才需要進行轉義。但轉義是可以的。