Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#의 '0' 사용자 지정 숫자 형식 지정자 이해하기

C#에서 '0' 사용자 지정 형식 지정자는 자리 표시자(placeholder) 역할을 하는 특수 기호입니다. 이름 그대로 해당 위치에 숫자가 없으면 0으로 채워주는 기능을 합니다.

'0' 형식 지정자의 동작 원리

형식 문자열에서 '0'이 나타나는 위치에 서식을 적용할 값에 실제 숫자가 존재하면, 그 숫자가 결과 문자열에 그대로 복사됩니다. 반면, 해당 위치에 유효한 숫자가 없다면 대신 0이 출력됩니다.

예를 들어 다음과 같은 double 변수가 있다고 가정해 보겠습니다.

double d;
d = 292;

여기서 아래와 같이 형식 문자열을 설정하면, 숫자 앞부분을 손쉽게 0으로 채울 수 있습니다.

d.ToString("00000")

위 코드는 5자리 형식을 지정했기 때문에, 3자리 숫자인 292 앞에 두 개의 0이 추가되어 00292로 표시됩니다.

예제 코드

using System;
using System.Globalization;
class Demo {
    static void Main() {
        double d;
        d = 292;
        Console.WriteLine(d.ToString("00000"));
        Console.WriteLine(String.Format("{0:00000}", d));
        d = 3.5;
        Console.WriteLine(d.ToString("0.00", CultureInfo.InvariantCulture));
    }
}

실행 결과

00292
00292
3.50

코드 설명

위 예제에서는 세 가지 방식으로 '0' 형식 지정자를 활용했습니다.

1. ToString 메서드 사용: d.ToString("00000")은 숫자를 5자리로 맞추고, 부족한 자릿수를 0으로 채웁니다.

2. String.Format 사용: {0:00000} 형태로 복합 형식 지정(composite formatting)을 통해 동일한 결과를 얻을 수 있습니다.

3. 소수점 이하 처리: "0.00"처럼 사용하면 정수 부분과 소수점 이하 두 자리를 강제로 표시합니다. 3.5는 3.50으로 출력되며, 문화권(culture)에 따른 소수점 구분 기호 차이를 피하기 위해 CultureInfo.InvariantCulture를 함께 사용했습니다.

활용 팁

'0' 형식 지정자는 주문 번호, 사원 번호, 제품 코드처럼 일정한 자릿수를 유지해야 하는 숫자를 표시할 때 특히 유용합니다. 예를 들어 "000000"을 사용하면 항상 6자리 코드 형태로 출력할 수 있어 데이터 일관성을 유지하는 데 도움이 됩니다.