1
public
String double2String(
double
d,
int
fNumber)
{
2 if (fNumber < 0)
3 fNumber = 0;
4
5 String pattern = null;
6 switch (fNumber) {
7 case 0:
8 pattern = "#0"; //$NON-NLS-1$
9 break;
10 default:
11 pattern = "#0."; //$NON-NLS-1$
12 StringBuffer b = new StringBuffer(pattern);
13 for (int i = 0; i < fNumber; i++) {
14 b.append('#');
15 }
16 pattern = b.toString();
17 break;
18
19 }
20 DecimalFormat formatter = new DecimalFormat();
21 formatter.applyPattern(pattern);
22 String value = formatter.format(d);
23 return value;
24 }
double直接输出时,如果小数点后位数太长会出现字母e,采用本方法转换为string再输出
2 if (fNumber < 0)
3 fNumber = 0;
4
5 String pattern = null;
6 switch (fNumber) {
7 case 0:
8 pattern = "#0"; //$NON-NLS-1$
9 break;
10 default:
11 pattern = "#0."; //$NON-NLS-1$
12 StringBuffer b = new StringBuffer(pattern);
13 for (int i = 0; i < fNumber; i++) {
14 b.append('#');
15 }
16 pattern = b.toString();
17 break;
18
19 }
20 DecimalFormat formatter = new DecimalFormat();
21 formatter.applyPattern(pattern);
22 String value = formatter.format(d);
23 return value;
24 }