iPhone XML解析浮点数据

时间:2010-01-19 12:06:06

标签: iphone floating-point xml-parsing

我正在读取XML数据并创建对象,但我需要将一些对象变量作为浮点数。使用- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string它显然变成了一个字符串,我的浮点变量将设置为0.000000。

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName中我在设置对象的值时尝试了类似的东西,但它显然是不兼容的类型,因为setValue想要一个(id)键(我只是意识到temp总是设置为0.000000,所以floatValue也不起作用。)

if([elementName isEqualToString:@"longitude"]) 
{
    float temp = [currentElementValue floatValue];
    [myObj setValue:temp forKey:elementName];
}

有没有人知道如何解决它,或者我只需要在我的对象中将其设置为NSStrings并在之后将其转换为浮点数?

1 个答案:

答案 0 :(得分:1)

解析时只需将其保存为字符串即可。然后,当你需要它进行计算时,将其转换为a 如上所述,使用[NSString floatValue]浮动。

但是我认为float无法保留NSString次返回的值,因此请尝试使用您的临时值作为CGFloat

xml无法保存其他字符串,因此这种方法没问题。