我正在寻找将一个简单的objectiveC类(甚至不是现在它只是函数中的一些vars)转换为JSON,以便可以在服务器端将其发送并插入到java对象中。
该类可能具有以下字段;
LatLng locationA // a simple POJO with either float or long to represent lat and long.
LatLng locationA
float someFloat
在我试图将所有内容打包到 NSDictonary 的那一刻。传递浮点数不起作用,所以我必须将它们转换为 NSStrings。所以在服务器端,它们会以字符串的形式出现......这并不理想。
CLLocationCoordinate2D location = ... ;
float lat = location.latitude;
float lng = location.longitude;
float aFloat = 0.12434f;
NSString *aFloatstr = [NSString stringWithFormat:@"%f", aFloat];
NSString *latStr = [NSString stringWithFormat:@"%f", lat];
NSString *lngStr = [NSString stringWithFormat:@"%f", lng];
NSDictionary *locationDictionary =
[NSDictionary dictionaryWithObjectsAndKeys:
latStr , @"latitude",
lngStr, @"longitude",
nil];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:
locationDictionary, @"locationA",
locationDictionary, @"locationB",
aFloatstr,@"aFloat",
nil];
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error];
NSString *str = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSLog(@"%@",str);
将 CLLocationCoordinate2Ds 放入 NSDictionary 的最佳方法是什么?
如何将原始类型、长浮点数等添加到 NSDictionary?