我正在使用 xmlWriter 创建一个 XML,我在一个具有多个键/值对的 NSDictionary 中有值,但是其中一些值是 [NSNull null],我将每个值都传递到它自己的 NSString 中。
在我的 XMLWriter 方法中,我有一个 if 语句来检查这是否是对 db 的特定方法调用,如果是,那么我想仅为不相等的 NSString 变量创建 writeAttributes [NSNull null]。
我不确定如何动态检查每个变量。我想也许我可以做一个 if 语句,但那是行不通的,因为只要其中一个变量不等于 [NSNull null] 那么它就会跳出这个当 xml 可能需要更多变量时,它是 XMLWritter 的一部分。
这是我失败的想法,所以你明白我想要做什么
// Method Params --->
- (NSMutableData *) addMethodParams
{
//allocate serializer (this is using the xmlWriter class)
id <XMLStreamWriter> xmlWriter = [[XMLWriter alloc] init];
[xmlWriter writeStartElement:@"Eng"];
[xmlWriter writeStartElement:@"Parameters"];
[xmlWriter writeStartElement:@"Vars"];
if ([methodName isEqualToString:@"SeriesSearch"]) // name of method currently being requested
{
if ((NSNull *) Series != [NSNull null]) { // if this is null then its jumped
[xmlWriter writeAttribute:@"Code" value:Series];
}
else if ((NSNull *) IDSeries != [NSNull null]){ //if this is !null then it enters the if statement however it then will jump out and not check over any of the other if statments
[xmlWriter writeAttribute:@"ManufacturerID" value:IDSeries];
}
//..
}
[xmlWriter writeEndElement];
[xmlWriter writeEndElement];
[xmlWriter writeEndElement];
所以问题是如何将具有值的变量添加到我的 xml 中以停止为空的变量?创建我猜是一种动态 xml 编写器。