帮助XML解析XML

时间:2009-10-01 06:43:12

标签: iphone xml parsing

我需要在iphone中解析下面列出的xml。任何人都可以帮助我。 请...!

提前致谢...

<Assignments>
<Course>
    <CourseName>Foundation of English</CourseName>
    <CourseGradePercentage>89</CourseGradePercentage>
    <AssignmentList>
        <Assignment>
            <AssignmentName>Foundations of English I</AssignmentName>
            <Week>Week 1</Week>
            <AssignmentGrade>2</AssignmentGrade>
            <AssignmentGradePercentage>20</AssignmentGradePercentage>
        </Assignment>
        <Assignment>
            <AssignmentName>Foundations of Maths I</AssignmentName>
            <Week>Week 1</Week>
            <AssignmentGrade>2</AssignmentGrade>
            <AssignmentGradePercentage>20</AssignmentGradePercentage>
        </Assignment>
    </AssignmentList>
</Course>
<Course>
    <CourseName>Foundation of Maths</CourseName>
    <CourseGradePercentage>92</CourseGradePercentage>
    <AssignmentList>
        <Assignment>
            <AssignmentName>Foundations of English I</AssignmentName>
            <Week>Week 1</Week>
            <AssignmentGrade>4</AssignmentGrade>
            <AssignmentGradePercentage>40</AssignmentGradePercentage>
        </Assignment>
        <Assignment>
            <AssignmentName>Foundations of Maths I</AssignmentName>
            <Week>Week 1</Week>
            <AssignmentGrade>4</AssignmentGrade>
            <AssignmentGradePercentage>40</AssignmentGradePercentage>
        </Assignment>
    </AssignmentList>
</Course>

我需要得到的是......

英语基础1 99.99%

第1周作业10(100%) 第2周作业8(80%) 第3周作业10(100%)

数学基础1 100%

第1周作业10(100%)

这只是一个示例数据..这是我需要在iphone表视图上显示的格式.. 请帮助我..

谢谢, 世斌 shibin.moideen@mediaus.com

2 个答案:

答案 0 :(得分:4)

考虑将libxml2this useful set of wrapper functions提供的Objective-C前端一起使用。

您向XML文档对象发出XPath查询并获取基础类对象:NSArrayNSStringNSDictionary,例如:

//
// Generate NSData* object called _xmlData which is the XML data
// 

// ...

//
// Query this data for course names
//

NSArray *_queriedCourseNames = PerformXMLXPathQuery(_xmlData, @"//*[local-name()='Course']/*[local-name()='CourseName']");

答案 1 :(得分:0)

而不是“课程”,为什么要使用本地名称?

//Course/CourseName 

应该正常工作,对吧?

相关问题