my code is below
NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"];
NSString *someString = [someNumber stringValue];
_lbldistance.text=someString;
my code is below
NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"];
NSString *someString = [someNumber stringValue];
_lbldistance.text=someString;
If you even want to include km
in the string use NSLengthFormatter
NSNumber *someNumber = @1568;
NSLengthFormatter *formatter = [[NSLengthFormatter alloc] init];
NSString *distanceInKM = [formatter stringFromMeters:someNumber.doubleValue];
NSLog(@"%@", distanceInKM); // 1.568 km
That's rather simple: Divide by 1000.
By divide someNumber with 1000.
NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"];
someNumber = [someNumber floatValue] * 1000;
NSString *someString = [someNumber stringValue];
1 meter is equal to 0.001 KM (as 1/1000 = 0.001).
So you can just multiply the value you receive from API with 0.001 and you will get the answer in KMs.
NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"];
float convertedToKM = [someNumber floatValue]*0.001;
someNumber = [NSNumber numberWithFloat:convertedToKM];
NSString *someString = [someNumber stringValue];
_lbldistance.text=someString;
Since you are displaying the result, it would be better to limit it to two decimal places as is the standard practice. You can do it like:
NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"];
float convertedToKM = [someNumber floatValue]*0.001;
NSString *someString = [NSString stringWithFormat:@"%.02f", convertedToKM];
_lbldistance.text=someString;