我正在制作一个采用 Flickr 图片 URL 并返回图片 ID 的基本方法。我将方法传递给NSString @"http://farm6.staticflickr.com/5183/5629026092_c6762a118f".
目标是返回 int: 5629026092,它位于图像的 URL 中并且是图像的 ID。
这是我的方法:
-(int)getImageIDFromFlickrURL:(NSString *)imageURL{
    NSArray *objectsInURLArray = [imageURL componentsSeparatedByString:@"/"];
    NSString *lastObjectInFlickrArray = [objectsInURLArray lastObject];
    NSArray *dirtyFlickrIdArray = [lastObjectInFlickrArray componentsSeparatedByString:@"_"];
    NSString *flickIDString = [dirtyFlickrIdArray objectAtIndex:0];
    NSLog(@"flickr id string: %@",flickIDString);
    int flickrID = [flickIDString intValue];
    NSLog(@"id: %i",flickrID);
    return flickrID;
}
控制台中的输出是:
2012-05-26 13:30:25.771 TestApp[1744:f803] flickr id string: 5629026092
2012-05-26 13:30:25.773 TestApp[1744:f803] id: 2147483647
为什么调用会intValue变形实际数字?