我需要从 NSString 创建一个 JsonString,而 ObjC 中没有任何键。所有教程都讨论了 NSDictionary 或 NSData 的序列化。
我的字符串就像@“fr-FR”。我正在寻找的结果就像@"{"fr-FR"}",但是是动态的。我自己不能这样做,因为我需要为不同类型的论点做同样的事情。
提前致谢 :)
我需要从 NSString 创建一个 JsonString,而 ObjC 中没有任何键。所有教程都讨论了 NSDictionary 或 NSData 的序列化。
我的字符串就像@“fr-FR”。我正在寻找的结果就像@"{"fr-FR"}",但是是动态的。我自己不能这样做,因为我需要为不同类型的论点做同样的事情。
提前致谢 :)
为了达到您要求的结果(即使它不是正确的 JSON),您可以尝试这样的事情:
NSString *myString = @"fr-FR"; // Or whatever
NSString *result = [NSString stringWithFormat:@"{\"%@\"}", myString];
如果您在 IOS 5 + 上开发,您可以使用 NSJSONSerialization 类
用你的字符串创建数据
NSString *myString = @"fr-FR"; // Or whatever
NSString *result = [NSString stringWithFormat:@"{%@}", myString];
NSData* data=[result dataUsingEncoding:NSUTF8StringEncoding];
然后使用
+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error
创建您的 JSON 对象
(只是输入,未测试)
恕我直言,再次阅读 json 规范 ( http://www.json.org ) {"string"} 不是有效的 json 并且您在 c# 中使用的代码会产生无效的结果。但是,如果您需要与以这种方式操作的 c# 代码进行通信,您应该使用 JSON 库对字符串本身进行编码,然后将其打包在花括号中。这样,您就可以获得特殊情况下 JSON 所需的所有转义(例如引号和诸如此类的东西),如果您只是手动添加引号和大括号,您就不需要这些转义。