科学计数法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//科学计数法转化一般
- (NSString *)cavrtNsstring:(NSString *)data
{
if ([data containsString:@"E"]) {
return [self twoCavrt:data];
}else{
return data;
}
return data;
}
- (NSString *)twoCavrt:(NSString *)data
{
NSArray *arrayData = [data componentsSeparatedByString:@"E"];
NSString *dataHeard = arrayData[0];
NSString *dataOffset = arrayData[1];
NSLog(@"dataHeard = %@",dataHeard);
NSLog(@"dataOffset = %@",dataOffset);
NSRange range = [dataHeard rangeOfString:@"."];
NSInteger location = range.location;
NSInteger sum = location + [dataOffset integerValue];
NSLog(@"sum = %ld",sum);

NSMutableString *mutString = [NSMutableString stringWithString:dataHeard];

NSInteger lengtTest = mutString.length-2;
if (lengtTest <= [dataOffset integerValue]) {
for (int i = 0; i <= lengtTest; i++) {
[mutString appendString:@"0"];
}
}

NSRange rangeDete;
rangeDete.location = 1;
rangeDete.length = 1;
[mutString deleteCharactersInRange:rangeDete];

NSLog(@"mutString = %@",mutString);
[mutString insertString:@"." atIndex:sum];

for (NSInteger i = sum; i>0; i--) {

sum -= 3;
if (sum<=0) {
break;
}else{
[mutString insertString:@"," atIndex:sum];
//sum--;
}

}

return mutString;
}
NSString *data = @"8.88888888884E9";
NSLog(@"data = %@",[self cavrtNsstring:data]);

热评文章