![我尝试使用Xcode读取xml文件,但它在String中给出响应,xml将在下面的图像中显示,并且它给出<和>代表<和>] [1]
我正在尝试从服务器上读取mywebservice。我写了一个web服务,它在网站的xml formate中创建文件。 当我在网站上检查该文件时,它显示如下:
<NewDataSet>
<Table>
<Column1>Audi</Column1>
</Table>
<Table>
<Column1>BMW</Column1>
</Table>
<Table>
<Column1>MINI</Column1>
</Table>
</NewDataSet>
但是当我通过soap调用该文件时,它会给出以下响应:
<NewDataSet>
<Table>
<Column1>Audi</Column1>
</Table>
<Table>
<Column1>BMW</Column1>
</Table>
<Table>
<Column1>MINI</Column1>
</Table>
</NewDataSet>
但是我无法读取像'NewDataSet'这样的标签,因为它在String中给出了回复,我是XML的新手,所以请帮助我..我使用Xcode和nsmutabledata ... !! 我尝试过stringbyReplaceofOccurance但它没有用&lt;&lt;&amp;&amp; gt替换&lt;取代。 在此先感谢。
提前感谢您的帮助。
答案 0 :(得分:1)
我认为,试试NSXMLParser
这对你有帮助......
答案 1 :(得分:0)
使用TouchXML的最佳读取xml文件方式....对于TouchXML,请使用此下面的链接
http://dblog.com.au/general/iphone-sdk-tutorial-building-an-advanced-rss ...
也在这里,当你得到回应,然后其他方式,你可以阅读如下使用TouchXML .. 即..
- (void) fetchDataSuccessforEvent:(NSMutableData *)data
{
CXMLDocument *doc = [[[CXMLDocument alloc] initWithData:data options:0 error:nil] autorelease];
NSArray *nodes = [doc nodesForXPath:@"//Table" error:nil];
for (CXMLElement *node in nodes)
{
for(int counter = 0; counter < [node childCount]; counter++)
{
if ([[[node childAtIndex:counter] name] isEqualToString:@"Column1"])
{
NSString *string = [[node childAtIndex:counter] stringValue];
NSLog(@"\n\n Title %@",string);
}
}
}
}
这么容易...... 希望,这有助于你.... :)
答案 2 :(得分:0)
这不是解析问题。检查Web服务并确保xml标头是:<?xml version="1.0" encoding="utf-8"?>
或类似的东西。