2017-12-22 11 views
-1

[String: String] dictの文字列表現をCライブラリに渡す必要があります。そうするん、[String:String]辞書をエスケープされていない文字列に変換する

"{ 
    "type": "open", 
    "source": keyOfPendingBlock, 
    "representative:" anotherAccountList, 
    "account": myAddress, 
    "work": "0", 
    "signature": "0" 

}" 

block.descriptionエスケープ:私はこのようになります値に送信しようとしている

var block: [String: String] = [:] 
block["type"] = "open" 
block["source"] = "A59A25991" 
block["account"] = "1231" 
block["work"] = "0" 
block["signature"] = "0" 

let data = try JSONSerialization.data(withJSONObject: block, options: .prettyPrinted) 
if let string = String(data: data, encoding: .utf8) { ... } 

は、どのように私はエスケープせずに、この値を得ることができます?おかげ

+1

*エスケープ*とはどういう意味ですか?表示されたバックスラッシュはバーチャルで、 '.prettyPrinted'は余分な空白と改行文字を追加します。 – vadian

+0

ええ、エスケープすると、私はコンソールで印刷するときに見える改行とバックスラッシュを意味しました。文字列の一部としてこれらの新しい行とバックスラッシュを送信しないようにしたいと思います。 –

+0

Delete '、options:.prettyPrinted' – vadian

答えて

0

使用let data = try JSONSerialization.data(withJSONObject: block, options: [])

prettyPrintedオプションは、改行文字と空白を追加しています。

関連する問題