- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个需要读取 XML file 的 iPhone 应用程序
@property (nonatomic, strong) NSString *name;
@property (nonatomic, strong) NSString *fileName;
@property (nonatomic, strong) NSString *description;
@property (nonatomic, strong) NSString *date;
@property (nonatomic, strong) NSString *link;
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
// FIRST TAG XML
if([elementName isEqualToString:@"title"]){
// GET DATA FROM XML
getData = YES; // getData is a bool which is NO initialy
NSLog(@"Found");
}
else
NSLog(@"Not Found");
}
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if(getData)
{
// CREATION DE L OBJET DEPUIS LE XML
NSLog(@"This is your desired data = %@",string);
NSLog(@"Object creation ...");
Pebkac *peb = [[Pebkac alloc] init];
NSLog(@"Setup the name ...");
[peb setName:@"Pebkac"];
NSLog(@"Small descrption ...");
[peb setDescription:string];
[pebkacs addObject:peb];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
// XML END TAG
if ([elementName isEqualToString:@"title"]){
getData = NO;
}
}
我观察到的错误是,有时它无法获取标签之间的所有文本。
最佳答案
foundChars
可以被调用N次。您总是将字符串设置为到达那里的字符。您必须一次又一次地附加字符,当您收到 endTag
调用时,您必须设置结果。
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if(!foundChars)
foundChars = [[NSMutableString alloc] init];
[foundChars appendString:string];
}
然后在最后使用它 -- 编写的示例适合您的问题
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if(getData)
{
// CREATION DE L OBJET DEPUIS LE XML
NSLog(@"This is your desired data = %@",string);
NSLog(@"Object creation ...");
Pebkac *peb = [[Pebkac alloc] init];
NSLog(@"Setup the name ...");
[peb setName:@"Pebkac"];
NSLog(@"Small descrption ...");
[peb setDescription:foundChars];
[pebkacs addObject:peb];
}
//reset
foundChars = nil;
// XML END TAG
if ([elementName isEqualToString:@"title"]){
getData = NO;
}
}
关于iphone - XMLParser iPhone SDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14044424/
我在从以下 XML 解析属性值时遇到问题: s=''' ''' def contextroot def xml = new XmlParser(false,fa
我在从以下 XML 解析属性值时遇到问题: s=''' ''' def contextroot def xml = new XmlParser(false,fa
我想解析一个看起来像这样的 XML 标记: 我目前正在使用 BlockRSSParser 来做这件事。 我试过用下面的方法来做: - (void)parser:(NSXMLParser *)pars
这个问题在这里已经有了答案: how to parse the local XML correctly? (1 个回答) 关闭 3 年前。 我试图用 let contentString = "abc
我正在使用 Swift 编写一个 RSS 阅读器应用程序。我使用内置类 XMLParser做解析工作。 XMLParser当遇到一些奇怪的标签时会停止,例如 (此标签与结束标签 匹配)。错误代码为
我正在解析的 wiki 页面丢失了大量空白,我认为这是解析器的问题。我的 Groovy 脚本中有这个: @Grab(group='org.ccil.cowan.tagsoup', module='ta
我已经遵循了多个关于如何为 Android 平台设置 SAX XML 解析器的在线教程,但它们似乎都不起作用!有什么问题?这是我的代码: 进口: import java.net.URL; import
所以我有一个 XML 文件,我使用 NSXMLParser 处理它。所需的元素是 我需要检索我试过的 url: -(void)parser:(NSXMLParser *)parser didStar
我正在创建一个需要读取 XML file 的 iPhone 应用程序 属性 @property (nonatomic, strong) NSString *name; @property (nonat
我有一个使用 Swift 的 XMLParser,运行良好。但是,有时会出现与我想要的实际节点同名的节点。因此,当这些额外的节点出现时,一切都会变得困惑。这是良好场景的示例。这已经被简化了一点以帮助解
有一段时间我一直在使用 SWXMLHash用于在我的项目中解析 XML,但现在它目前不支持 Swift 3.0,所以我决定开始使用我自己的 XML 解析类来实现这一点。 我已经完成了基础工作,但是没有
我知道 xmlreader 和其他基于树的解析器(如 simplexml 和 dom)之间的区别。但是xmlreader和xmlparser有什么区别呢?使用一个比另一个有什么好处吗? 我需要解析比较
我做了一个 RSSParser,我不想将日期从 yyyy-MM-dd'T'HH:mm:ssZ 转换为 dd/MM/yyyy: func setDateForCell(cell:ActuTblCell,
我有一些 XML 文件,如果 name == testName,我想更改 name。所以我写了这样的东西,但它不起作用。我哪里做错了?它向我打印参数类型不匹配,我不知道为什么。 String xmlD
我正在使用 groovy XmlParser 读取 xml- 文件,例如: def myXMLContent = new XmlParser().parse(new File("myFile.xml"
我在 React Native App 中工作,只是想执行这段代码 fetch('https://ad13.adfarm1.adition.com/banner?sid=3915124&wpt=X.x
我正在尝试从预设的 xml 文件中提取值,但当我尝试检查该值是什么时,我总是得到 null。 if (pulled.equals("preset")) { presetName = xmlPa
在我的 VC 中,我调用了一个 XML 网络服务。根据结果,我可能会转向另一家 VC。我已经从我的代码中删除了业务逻辑,只留下重要的部分。这是我的代码的简短版本: func parser(_ pa
我想解析和下载当前的 EUR - USD 汇率。我决定从 the European Central Bank Feed 中获取值. 我正在使用 CheatyXML XMLParser 扩展。 如何获取
我有一个实用程序方法,它使用创建为 etree.XMLParser(recover=True) 的解析器来解析 XML。我想在单元测试中测试失败场景。除了空输入抛出 lxml.etree.XMLSyn
我是一名优秀的程序员,十分优秀!