我正在创建一个文本文件的JSON对象,我将它复制粘贴到""
这是 textJSON
{
"product_id": 12,
"product_title": "T-Shirt",
"brand": {
"brand_id": 3,
"brand_name": "Armani"
}
}
这里我是如何尝试将其传递给NSString而我收到unterminated string literal
的错误
var stringJSON:NSString = "{
"product_id": 12,
"product_title": "T-Shirt",
"brand": {
"brand_id": 3,
"brand_name": "Armani"
}
}"
我知道我可以通过删除新行并逐步执行来修复它,但无论如何我都可以将此值发送到我的NSString
而不检查复制粘贴上的每个错误?
答案 0 :(得分:1)
您可以使用json缩小器(例如http://www.httputility.net/json-minifier.aspx),然后将所有"
替换为\"
。
答案 1 :(得分:1)
为XCode安装HOStringSense-for-Xcode
只需复制和粘贴操作即可轻松添加井格式的字符串
答案 2 :(得分:1)
Swift不支持多行字符串文字。您必须删除所有换行符并转义所有引号。你的字符串将如下所示:
var stringJSON:NSString = "{ \"product_id\": 12, \"product_title\": \"T-Shirt\", \"brand\": {\"brand_id\": 3, \"brand_name\": \"Armani\" } }"
如果必须对多个字符串执行此操作,则可能有更好的方法来存储JSON,而不是将其硬编码到程序中。从.json文件加载不会有这些问题。
答案 3 :(得分:0)
由于引号,问题正在发生。我修改了代码如下: -
var stringJSON:NSString = "{\"product_id\": 12,\"product_title\": \"T-Shirt\",\"brand\": {\"brand_id\": 3,\"brand_name\": \"Armani\"}}"
它似乎正在发挥作用。在字符串中添加引号时,它会将其视为字符串的结尾。请将字符串中的所有引号(“)更改为带有转义字符(\”)的引号。另外,我尽量避免在多行上传播字符串。
希望这有帮助!