NSDictionary 到 XML 字符串

发布于 2024-11-02 19:55:06 字数 93 浏览 3 评论 0原文

我在 iPhone 和 Java 服务器之间使用 XML 通信。我使用 TBXml 解析传入的消息。将 NSDictionary 转换为 xmlString 有什么好方法?

Im using XML communication between Iphone and Java server. Using TBXml I parse incoming messages. Whats a good method to convert NSDictionary to xmlString?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

墟烟 2024-11-09 19:55:06

这对我来说很有效:

NSString *error;
NSData *xmlData = [NSPropertyListSerialization dataFromPropertyList: myDictionary
                                                             format: NSPropertyListXMLFormat_v1_0
                                                   errorDescription: &error];

NSString *xmlString = [[NSString alloc] initWithData: xmlData encoding: NSUTF8StringEncoding];

This did the trick for me:

NSString *error;
NSData *xmlData = [NSPropertyListSerialization dataFromPropertyList: myDictionary
                                                             format: NSPropertyListXMLFormat_v1_0
                                                   errorDescription: &error];

NSString *xmlString = [[NSString alloc] initWithData: xmlData encoding: NSUTF8StringEncoding];
雨巷深深 2024-11-09 19:55:06

如果您的字典包含有限数量的类,特别是 NSDataNSStringNSArrayNSDictionaryNSDateNSNumber,您可以使用 NSPropertyListSerialization,特别是 - (BOOL)writeToFile:(NSString *)pathatomically:(BOOL )flag 方法。这将以 plist XML 的形式写出数据,这对于简单的情况来说已经足够了。

否则,您可能必须为自定义类编写自定义序列化方法。

If your dictionary consists of a limited number of classes, specifically NSData, NSString, NSArray, NSDictionary, NSDate, and NSNumber, you can use NSPropertyListSerialization, in particular the - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag method. This will write out the data in plist XML, which is sufficient for simple cases.

Otherwise, you will probably have to write custom serialization methods for custom classes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文