我正在尝试处理来自 API 的 XML plist 数据,但是遇到了很多问题!
数据是 Apple plist 格式,我正在使用来自此链接的 Akos 代码进行解析,这似乎工作得很好。它将字符串、对象解析为 HashMap。我能够获得给定键的值,即。
Object childItems = items.mPlistHashMap.get("childItems");
System.out.println(childItems.getClass());
System.out.println(childItems);
childItems.getClass() 显示为 -类 java.util.ArrayList
childItems 的 LogCat 输出显示 - [{remoteFilePath=/Picture.png, host=www.host.com, ratingCount=1, targetId=82, commentCount=1, externalId=/demo.host.com/Private/Picture.png , fileSize=23738, entity_name=Item, memberAccessLevel=0, leaderAccessLevel=0, name=Picture.png, target=SystemUser, ownerAccessLevel=3, tagCount=1}, {lastName=Test, entity_name=User, username=Test, host =www.host.com, userId=82, firstName=Test, password=TestPwd, loginName=Test}, {typeId=0, entity_name=UserType, name=UserType_Teacher}]
我认为我可以使用这个 ArrayList,但这是我要撤消的地方。例如,我想获取 remoteFilePath 值,并将其显示在 ListView 中(已经为本地文件工作)。
上面的示例 childItems 列表仅包含一个文件 (Picture.png),但此列表可以包含任意数量的文件,因此我需要迭代列表并获取要显示的 remoteFilePath 的任何值。
任何帮助表示赞赏,我只是不知道如何“深入”到这个列表中,或者是否需要将 childItems 对象转换为新的 Array 等等。
如果我遗漏任何重要信息,请询问,我将提供:)