2012-03-06 6 views
12

나는 데이터베이스의 십진수 인 amount 필드가 있습니다. 10 진수의 왼쪽에 10 개의 숫자를두고이 양을 항상 표시해야합니다.C# 0으로 채우는 금액

예 :

0000001245.000000011245.00

을 항상 가지고있는 양을 포맷 할 수 있습니다 방법으로 표시해야하는 1,000 이상 또는 10,000
Amount = 245.000000000245.00 로 표시되어야 또한, 양이 될 수있다 가변 크기의 십진수의 왼쪽에있는 0의 적절한 수?

답변

23

당신은 당신의 형식 문자열에 공의를 두어야 사용할 수 있습니다. 이 같은.

myValue.ToString("0000000000.00"); 

항상 소수점 왼쪽에는 10 자리, 오른쪽에는 2 자리가 있습니다.

오른쪽에 두 자리가 필요없는 경우 ... 이렇게하십시오.

myValue.ToString("0000000000.##"); 

이렇게 표시되면 값이 표시됩니다. 그렇지 않으면 건너 뜁니다.

+0

반올림합니다. –

8

이 도움이 될 ...

http://www.csharp-examples.net/string-format-int/ 그래서 당신은이

string.Format("{0:0000000000.00}", 15.25); // "0000000015.25"

+0

나는 이것을 역시 생각했지만 질문을 다시 읽었다. 소수점 오른쪽의 자릿수는 달라야하며 정확히 두 자릿수는 아닙니다. – Yuck

+0

@Yuck 그건 내가 이해하는 방식이 아니야. '10 진수의 왼쪽에 10 개의 숫자를 표시하고 2 번째에 항상이 숫자를 표시해야합니다.'... 9999999999보다 큰 숫자에서는 작동하지 않습니다. 앞에 11 개의 숫자가 있습니다. –

+0

ToString은 string.Format보다 더 효율적입니다. 즉, 'd'가 10 진 변수라고 가정하면'd.ToString ("0000000000.00")'은'string.Format ("{0 : 0000000000.00}", d)' – phoog

2

yourDecimalVariable.ToString ("0000000000.00")이 트릭을 수행해야합니다.