2016-12-25 125 views
-3

我正在做的是用C++編寫.js文件,它將用於.html文件來繪製組織結構圖。 我實際上正在製作一個抽象語法樹。爲此,我將樹節點寫入如下的js文件中:在引號之間用引號括起來的文件中寫入字符串

var nodes = [ 
    "int main(){", 
    "String str = "hello 'Jane'";", 
    "}" 
] 

引號有問題。如何使用cpp獲得以下輸出。

var nodes = [ 
    "int main(){", 
    "String str = \"hello \'Jane\'\";", 
    "}" 
] 
+0

只是*相同*? –

+0

沒有得到您的問題 –

+0

在C++中,您可以像在JavaScript中一樣使用反斜槓來轉義字符串中的特殊字符。如果你需要更多的反斜槓,那麼你需要通過添加更多的反斜槓來逃避。 –

回答

-1

對於讀寫json文件你可以使用boost或QT,我通常使用QT。例如: :

QJson json; 
//write jeson 
json["test1"] = "hello"; 
json["test2"] = "jan"; 
//read from json file 
cout<<json["test1"]; 
cout<<json["test2"]; 
-1

寫一個叫做「escape」的函數。

int escape(char *out, size_t sz, const char *in) 
    { 
    int i = 0; 
    int j = 0; 

    for(i=0;in[i];i++) 
    { 
     if(j > sz - 2) 
      /* output buffer too small */ 
     switch(in[i]) 
     { 
      case '\n'; out[j++] = '\\'; out[j++] = 'n'; break; 
      case '\\'; out[j++] = '\\'; out[j++] = '\\'; break; 

      ... 

      default: out[j++] = in[i]; break; 
     } 
    } 
    out[j++] =0; 
    return j; 
    } 
相關問題