swift - 在 XMLParser 中识别 XML 字符串并将其格式化为可读格式
问题描述
我在 Swift 中工作,我有一组数据可以编码为这样的字符串:
<CONTAINER><Creator type="NSNull"/><Category type="NSNull"/><UMID type="NSArray"><CHILD>d1980b265cbd415c90f5d5f04efcb5df</CHILD><CHILD>7e0252c137c249fc92bd0f844effe27f</CHILD></UMID><Channels type="NSNumber">1</Channels></CONTAINER>
我正在寻找一种将这个字符串格式化为带有缩进的 XML 的方法,这样我就可以使用 XMLParser 正确地读取它,而目前它还没有。我想 NSNull 是当对象为空时,我只是没有看到这种格式,所以我不知道要搜索什么。它可以更接近 Dictionary 对象吗?如果是这样,我也很乐意将其格式化。
我还尝试从数据创建 XMLDocument,但它不修复格式。
编辑:
我想添加更多信息来帮助澄清我正在尝试做的事情。上面的这个字符串来自文件中的一段加密元数据。在我的代码中,我识别出已加密的数据块,然后对其进行解密,然后将该数据转换为字符串。值得注意的是,字符串最终在每个有效字符之间都有空字符,但我将它们去掉并以这个字符串结尾。
将此字符串复制到 XML 验证器中确认它是有效的 XML。令我困惑的是它的格式,其中它具有对象类型,例如 NSNull 和 NSNumber。我的帖子最初是希望识别这种格式。它似乎不仅仅是 XML。
作为对一些评论的回应,我将 XML Parser 委托与其他 XML 字符串一起使用,并对它的工作原理有基本的了解。我最初应该提到这一点,而是说 XML Parser 不能识别其中的任何这些元素或字符串。
更新:
问题最终是每个有效字符之间的空字符。去掉这些,然后通过 XML Parser 运行它效果很好。谢谢大家。
解决方案
推荐阅读
- ios - 如何在不使用 Any BaseUIViewController 的情况下禁用所有 UIViewController 的暗模式?
- regex - 使用 import re [regex] 仅提取数字并在其间放置逗号
- java - 如何以不同的方法调用全局数组列表
- android - BILLING_RESPONSE_RESULT_ERROR android 在应用程序购买 AIDL?
- node.js - 在 IISNODE 上,nodejs 应用程序无法连接到数据库回收或非活动进程关闭
- python - 无法在 PyCharm 上安装 googleapiclient
- mysql - Leftjoin with groupby 跳过 groupby
- sqlite - 如何从 SQLite 查询中提取和保存数据?
- typescript - 汇总打字稿装饰器支持
- stored-procedures - DB2 和存储过程 - 如何恢复绑定参数?