7

以下のコードは、緯度文字列を丸めています。丸くしたくない。double lat は 41.04546 でなければなりません。

NSString *latitude= @"41.04546";
double lat= latitude.doubleValue;  //it gives 41.0455
CLLocationCoordinate2D coordinat;
coordinat.latitude= lat;

丸めてはいけない正確な座標用。

4

2 に答える 2

19

この行で試してください..

NSString *latitude= @"41.04546";
double lat= [latitude doubleValue];
NSLog(@"\n\n Value Lat ==>> %f",lat);
于 2012-11-08T10:49:16.667 に答える
2

NSNumberFormatter を使用する

- (NSNumber *)numberFromString:(NSString *)string

NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc]init]; 
[numberFormatter setNumberStyle:kCFNumberFormatterDecimalStyle];
NSNumber *number = [numberFormatter numberFromString:@"41.04546"];       
NSLog(@"Number : %@ , Double value : %f",number,[number doubleValue]);   

Output:Number : 41.04546 , Double value : 41.045460

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSNumberFormatter_Class/Reference/Reference.html

于 2012-11-08T10:40:35.603 に答える