2017-05-25 45 views
0

我想解析JSONBuilder對象。這個JSON包含一些反斜槓。下面是我在做什麼將JsonBuilder解析爲JsonSlurper,保留Groovy中的反斜槓

b = new JsonBuilder(json).toPrettyString(); 
s = new JsonSlurper().parseText(b); 

但我得到這個錯誤

Expected a value or a closing curly brace } on line: 8, column: 27.

這是發生,因爲toPrettyString去除我JsonBuilder字符串的反斜槓(逃避charachers)。有什麼方法可以保留反斜槓?

回答

0
import groovy.json.*; 

def json =[a:"aa\naa",b:'bb\tbb"bb'] 

def b = new JsonBuilder(json).toPrettyString(); 
println b 

給出了良好的效果:

{ 
    "a": "aa\naa", 
    "b": "bb\tbb\"bb" 
} 

提供您的例子

+0

您的代碼在這裏給了一個錯誤:https://groovyconsole.appspot.com/script/5140871641038848 –

+0

問題在這服務https://groovyconsole.appspot.com。應該輸出'{「b \」}'的簡單代碼'println'{「b \\」}''會拋出javascript錯誤。使用groovy安裝中的標準'groovyconsole'來測試你的腳本:http://groovy-lang.org/groovyconsole.html – daggett