2015-01-02 3 views
-7

NSString 값을 ios의 int 값으로 변환해야합니다. 내 코드는 여기에 추가 : 는이 같은 시도String to int 값 변환 충돌?

NSDictionary *greeting,*greeting1,*greeting2,*greeting3,*greeting4,*greeting5,*greeting6,*greeting7; 

배열 값을 사전에 전달 :

for (int i=0; i<[arr count]; i++) { 

       [arr objectAtIndex:i]; 

       NSLog(@"%@",[arr objectAtIndex:i]); 

       [store addObject:[arr objectAtIndex:i]]; 

       NSLog(@"store%@",store); 

       [email protected][store[0]]; 

       NSLog(@"greeting5=%@",greeting5); 

       NSLog(@"clouds0=%@",[greeting5 valueForKey:@"clouds"]); 

       NSLog(@"deg0=%@",[greeting5 valueForKey:@"deg"]); 
       NSLog(@"dt0=%@",[greeting5 valueForKey:@"dt"]); 
       NSLog(@"humidity0=%@",[greeting5 valueForKey:@"humidity"]); 
       NSLog(@"pressure0=%@",[greeting5 valueForKey:@"pressure"]); 

       NSLog(@"rain0=%@",[greeting5 valueForKey:@"rain"]); 
       NSLog(@"speed0=%@",[greeting5 valueForKey:@"speed"]); 
       NSLog(@"temp0=%@",[greeting5 valueForKey:@"temp"]); 
       NSLog(@"temp0=%@",[greeting5 valueForKey:@"weather"]); 



       greeting6=[greeting5 valueForKey:@"temp"]; 

       NSLog(@"greeting6%@",greeting6); 

       NSLog(@"day0=%@",[greeting6 valueForKey:@"day"]); 
       NSLog(@"eve0=%@",[greeting6 valueForKey:@"eve"]); 
       NSLog(@"max0=%@",[greeting6 valueForKey:@"max"]); 
       NSLog(@"min0=%@",[greeting6 valueForKey:@"min"]); 
       NSLog(@"morn0=%@",[greeting6 valueForKey:@"morn"]); 
       NSLog(@"night0=%@",[greeting6 valueForKey:@"night"]); 

       greeting7=[greeting5 valueForKey:@"weather"]; 

       NSLog(@"description0=%@",[greeting7 valueForKey:@"description"]); 
       NSLog(@"icon0=%@",[greeting7 valueForKey:@"icon"]); 
       NSLog(@"id0=%@",[greeting7 valueForKey:@"id"]); 
       NSLog(@"main0=%@",[greeting7 valueForKey:@"main"]); 
       NSLog(@"morn0=%@",[greeting7 valueForKey:@"morn"]); 
       NSLog(@"night0=%@",[greeting7 valueForKey:@"night"]); 


      } 




NSString *minstr=[greeting6 valueForKey:@"min"]; 
    NSString *maxstr=[greeting6 valueForKey:@"max"]; 

    NSLog(@"minstr%@",minstr); 
    NSLog(@"maxstr%@",maxstr); 

    NSString *[email protected]"5"; 
    NSInteger val=[value intValue]; 

    NSLog(@"val%d",val); 

    int min=[minstr intValue]; 
    int max=[maxstr intValue]; 

    NSLog(@"min%d",min); 
    NSLog(@"max%d",max); 

greeting6 값이 여기에 내 코드를 :: 여기 내 인사 값을 인쇄입니다 ::

greeting6(
     { 
     day = "300.45"; 
     eve = "300.45"; 
     max = "300.45"; 
     min = "290.2"; 
     morn = "300.45"; 
     night = "290.2"; 
    } 
) 

내 오류 :

-[__NSArrayI intValue]: unrecognized selector sent to instance 0x8d2de00 
+0

당신이 greeting6 사전에 AA의 값을 할당하지 않으면 ... 당신이 취득하는 NSStrings은 전무 – gabuh

+0

입니다입니다 '[greeting6 valueForKey : @ "min"]'에서'NSArray instance'를 얻습니다. 해당 값을 인쇄하고 확인하십시오. –

+0

일부 값이 없습니다. – Imran

답변

-1

변경 :

[email protected][store[0]]; 

대신

greeting5=store[0]; 
+0

어,이 두 문장은 동일합니다. –

+0

예 내 오류가 고맙습니다. @vijay – Imran

+1

아니요, 첫 번째 객체는 [0]을 저장하고 greeting5에 저장합니다. 두 번째는 객체 저장소 [0] 만 저장합니다. – gnasher729

0

방금 ​​사전을 선언하고 있지만 값을 할당하지 않았습니다. 이 같은

NSDictionary *greeting,*greeting1,*greeting2,*greeting3,*greeting4,*greeting5,*greeting6,*greeting7; 

greeting6 = @{@"min": "5", 
       @"max" : "10" 
      } 

NSString *minstr=[greeting6 valueForKey:@"min"]; 
    NSString *maxstr=[greeting6 valueForKey:@"max"]; 

    NSLog(@"minstr%@",minstr); 
    NSLog(@"maxstr%@",maxstr); 

    NSString *[email protected]"5"; 
    NSInteger val=[value intValue]; 

    NSLog(@"val%d",val); 
    @try{ 

    int min=[minstr intValue]; 
    int max=[maxstr intValue]; 

    NSLog(@"min%d",min); 
    NSLog(@"max%d",max);