如何在Objective C中将基于XML的String值转换为整数

时间:2012-11-16 10:20:05

标签: objective-c ios xcode4.2 xcode4.3

这是用逗号分隔的XML代码,我将其解析为字符串,现在需要转换为整数: .h文件中的struct:     NSString *职位;

XML文件:     100,280,924,320

这是代码:

 NSArray * positons = [partyMember elementsForName:@"position"];
    if (positons.count > 0) {
        GDataXMLElement *firstName = (GDataXMLElement *) [positons objectAtIndex:0];
        //parsed[i].positons = firstName.stringValue;
        parsed[i].positons = firstName.stringValue;
        NSLog(@"position-%@,\n",parsed[i].positons);

第一个名称是本地声明的,解析[i] .positions具有da解析值,

4 个答案:

答案 0 :(得分:3)

您可以使用以下方法获取字符串数组:

NSArray* arr = [fullStr componentsSeparatedByString:@","] 

然后从那个

获取一个int
int firstInt = [[arr objectAtIndex:0] intValue]; 

答案 1 :(得分:1)

您可以使用以下代码从字符串中获取整数值:

  1. 首先在任何数组中获取逗号分隔的对象,如下所示:

    NSArray *arrObjects=[parsed[i].positons componentsSeparatedByString:@","]; 
    
  2. 然后通过使用该数组将字符串值转换为整数,如下所示:

    int iFirstValue=[[arrObjects objectAtIndex:0] intValue];
    
  3. 与其他人相似。

答案 2 :(得分:0)

您可以通过以下方式将NSString更改为int值:

[string intValue];
[string floatValue];

但这仅在值为数字但以字符串形式

时才有意义

答案 3 :(得分:0)

这是我做的:)在viewcontroller中应用它时更改Objectatindex值

 NSArray * positons = [partyMember elementsForName:@"position"];
    if (positons.count > 0) {
        GDataXMLElement *firstName = (GDataXMLElement *) [positons objectAtIndex:0];
        //parsed[i].positons = firstName.stringValue;
        parsed[i].positons = firstName.stringValue;
        NSLog(@" parsed position is %d, i = %d\n",[parsed[i].positons integerValue],i);
        NSArray* arr = [parsed[i].positons componentsSeparatedByString:@","];
       // firstStr = [[arr objectAtIndex:0] intValue];
        NSLog(@"position-%d,\n",[[arr objectAtIndex:2] intValue]);