.Net Framework/C#2010. 2. 18. 00:04

화폐단위나 하드디스크용량등을의 숫자값은 상당히 길때가 있습니다. 이럴 때 보는 사람이 구분하기 쉽게 하기 위해 3자리씩 구분자를 넣어 표시해주는 경우가 있습니다.

예를 들어 1234567890란 값이 있다면 1,234,567,890로 보여주고 하는 경우를 말합니다.

.NET에서는 이런 숫자값을 3자리씩 구분자를 넣어 문자열로 변환하고자 한다면, 정적인 메소드인 Format을 이용하면 간단하게 해결됩니다.

 

String.Format("{0:#,0} 원", 1234567890);

 

이 메소드의 2번째 파라미터로 지정된 1234567890는 변환전의 숫자값이고 첫번째 파라미터는 지정한 문자열을 {0:#,0}는 서식을 지정한 항목을 말합니다.

0:#,0의 의미를 설명해보면,

인덱스 0번째는 Argument로 지정된 숫자를 그 정수부분에 각 그룹별 간 단락문자(,)를 넣고 변환한다는 의미입니다.

 

출력된 문자열로 단락을 구분하는 문자가 넣어지게 되는 것은 서식지정항목으로 단락기호(,)가 지정되어 있기 때문입니다.  ,이전에 #은 자릿수홀더라고 말하며 ,이후에 0은 제로홀더라고 말하는데 이 두가지 조건이 구비되어 있어야지 정확한게 실행됩니다. 그렇기 때문에 #,0이라고 적는 것입니다.

 

[WonCheck.cs]

using System;
using System.Collections.Generic;

namespace WonCheck
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = 987654321;
            string s = String.Format("{0:#,0} 원", num);
            Console.WriteLine(s);
        }
    }
}

'.Net Framework > C#' 카테고리의 다른 글

Class Property  (0) 2010.02.18
Callback 함수  (0) 2010.02.18
참조 추가 또는 제거  (0) 2010.02.18
프로젝트 참조  (0) 2010.02.18
Command.ItemCommand Event  (0) 2010.02.18
Posted by Tiwaz