iOS 中的 JSON 序列化双引号 (") 和单引号 (') 问题
Posted
技术标签:
【中文标题】iOS 中的 JSON 序列化双引号 (") 和单引号 (\') 问题【英文标题】:JSON serialization double quote (") and single (') quote issue in iOSiOS 中的 JSON 序列化双引号 (") 和单引号 (') 问题 【发布时间】:2018-03-28 07:57:36 【问题描述】:我正面临 JSON 编码问题。
我已将我的数据提交到以下格式的服务器以保存备注。
Remarks = "test apple """ ";
然后在从服务器获取数据时,我收到了不同的格式,例如 输出:
Remarks = "test apple \U00e2\U0080\U009c\U00e2\U0080\U009d\U00e2\U0080\U009d\U00e2\U0080\U009d\\n";
在提交数据时,我正在使用 JSON 序列化。
NSData *jsonData
= [NSJSONSerialization dataWithJSONObject: dict
options: NSJSONWritingPrettyPrinted
error: nil];
if (jsonData)
NSString* jsonString
= [[NSString alloc]
initWithData: jsonData
encoding: NSUTF8StringEncoding];
NSLog(@"posting params: %@", jsonString);
我的问题是为什么我没有收到我已提交的信息。我只面对双引号 (") 和单引号 (')。
有人知道吗?
【问题讨论】:
你能显示一些服务器代码吗? android 应用程序运行良好.. 只有 ios 只面向.. 你知道@André Slotta 吗? 在你的例子中只有双引号,对吗?如何将数据发送到服务器。该示例是您代码的一部分吗? @Amin Negm-Awad 是的 【参考方案1】:您可能应该转义您的非定界引号: 备注 = "测试苹果\"\"\" ";
【讨论】:
可能,但只要他没有引用他的整个代码,它就是在猜测。【参考方案2】:iOS 11 在键盘设置中添加了“智能标点符号”。
这意味着当输入“Singapore”时,它会将其转换为“Singapore”。 '"' 被替换为 '“' 和 '”' 字符串。它们是不同的引号。
因此,一种选择可能是将 '“' 和 '”' 替换为 '\"'。
Smart Punctuation = No
【讨论】:
您好,如何处理我的代码我面临同样的双引号问题:["fontFamily"="firstfont","fontURL"="https%3A%2F%2Fs3.amazonaws.com% 2FAttachments%2F1295312%2FUmbrellaMarket.ttf%3FAWSAccessKeyId=AKIAIBQXWGUYOJ6RIHHA&Expires=1853589442&Signature=fY8146gswIkXYyuouOT90HPbOlA%253D","fontFamily"="secondfont","fontURL"="https%3A%2F%2Fs3.amazonaw 2FUmbrellaMarket.ttf%3FAWSAccessKeyId=AKIAIBQXWGUYOJ6RIHHA&Expires=1853589460&Signature=LKw3TMt9r9BPC9zmiw85tTktX1A%253D"] 当我将此代码发送到服务器时,我收到错误以上是关于iOS 中的 JSON 序列化双引号 (") 和单引号 (') 问题的主要内容,如果未能解决你的问题,请参考以下文章