手记

科学计数法转换浮点数【golang】

@[toc]

说明

科学计数法转换为小数点

代码

工具类


func ScientificNotationTransform(numStr string) string {
	decimalNum, err := decimal.NewFromString(numStr)
	decimalNum = decimalNum.Abs()
	if err != nil {
		logrus.Errorf("decimal.NewFromString error, numStr:%s, err:%v", numStr, err)
		return numStr
	}
	return decimalNum.String()
}

测试

func TestScientificNotationTransform(t *testing.T) {
	var str = "7.814E-7"
	s := ScientificNotationTransform(str)
	assert.Equal(t, s, "0.0000007814")

	str = "-12E-7"
	rs := ScientificNotationTransform(str)
	assert.Equal(t, rs, "0.0000012")
}


1人推荐
随时随地看视频
慕课网APP