Использование http://maps.google.com/maps/geo?q= .... возвращение широты и долготы, как те: 48.8616441,2.3448885iPhone - карта Google координаты и двойной точности
в обратной последовательности, как этот: 200,8,48.8616441,2.3448885
Когда анализируется в функцию, которая возвращает CLLocationCoordinate2D:
NSArray* listItems = [locationString componentsSeparatedByString:@","];
CLLocationDegrees latitude = kInexistantLatitude;
CLLocationDegrees longitude = kInexistantLongitude;
if([listItems count] >= 4 && [[listItems objectAtIndex:0] isEqualToString:@"200"]) {
latitude = [[listItems objectAtIndex:2] doubleValue];
longitude = [[listItems objectAtIndex:3] doubleValue];
}
CLLocationCoordinate2D location;
location.latitude = latitude;
location.longitude = longitude;
return location;
это дает в отладчик:
широта = 48,861644099999999 долгота = 2,3448885000000002
хранить много элементов, как это один в массив, и в конце концов, я разобрать массив записать их в Plist файл в качестве словаря пунктов (тегов) (я использую NSString appendFormat, что дает, как NSLog):
NSLog(@"%f %f", location.latitude, location.longitude);
48.861644 2.344889
в какой-то момент, я загрузить словарь, и я буду хранить этот материал для чтения в CLLocationCoordinate2D, чтобы отобразить его на MKMapView.
Поэтому у меня есть 2 проблемы:
1) Как я могу сохранить возвращаемое значение, заданное с помощью запроса HTTP без потери цифры, и сохраняя свою функцию?
2) Если я могу это сделать, как я могу прочитать материал и сохранить его в CLLocationCoordinate2D, не потеряв снова цифру?
Когда у меня есть точность 15 цифр, поплавок определенно теряет свою точность. –
я буду иметь максимум 8 цифр точность. Этот метод al чтобы сохранить фиксированное число десятичных знаков. В случае, если у меня точность на 15 цифр, и я указал% 8, он в конечном итоге сократит последние 7 цифр. –