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

C#에서 0으로 패딩하여 정수를 문자열로 변환하는 방법

C#에서는 정수를 일정한 자릿수로 맞추기 위해 앞부분을 0으로 채우는(패딩) 작업이 자주 필요합니다. 예를 들어 제품 코드나 주문 번호처럼 항상 4자리 숫자로 표시해야 하는 경우가 대표적입니다. 이번 글에서는 정수를 0으로 패딩한 문자열로 변환할 수 있는 다양한 방법을 예제와 함께 살펴보겠습니다.

주요 변환 방법

  • PadLeft — 지정한 길이의 새 문자열을 반환하며, 현재 문자열의 시작 부분을 공백 또는 지정한 유니코드 문자로 채웁니다.
  • ToString — 현재 개체를 나타내는 문자열을 반환합니다. 표준 및 사용자 지정 숫자 서식 지정자를 함께 사용할 수 있습니다.
  • 문자열 보간(String Interpolation) — $ 특수 문자를 사용해 문자열 리터럴을 보간 문자열로 만듭니다. C# 6부터 지원되는 기능입니다.

1. PadLeft 메서드 사용

먼저 ToString()으로 정수를 문자열로 변환한 뒤, PadLeft 메서드를 사용해 전체 길이가 4자리가 되도록 왼쪽에 '0'을 채우는 방식입니다.

using System;
namespace DemoApplication{
    class Program{
        public static void Main(){
            int number = 5;
            Console.WriteLine("Number: {0}", number);
            var numberString = number.ToString().PadLeft(4, '0');
            Console.WriteLine("Padded String: {0}", numberString);
            Console.ReadLine();
        }
    }
}

실행 결과

Number: 5
Padded String: 0005

2. 사용자 지정 서식 지정자(“0000”) 사용

ToString 메서드에 사용자 지정 서식 문자열을 직접 전달하는 방법입니다. “0000”은 숫자를 최소 4자리로 표현하고, 부족한 자릿수는 0으로 채웁니다.

using System;
namespace DemoApplication{
    class Program{
        public static void Main(){
            int number = 5;
            Console.WriteLine("Number: {0}", number);
            var numberString = number.ToString("0000");
            Console.WriteLine("Padded String: {0}", numberString);
            Console.ReadLine();
        }
    }
}

실행 결과

Number: 5
Padded String: 0005

3. 표준 숫자 서식 지정자(D4) 사용

“D4”는 10진수(decimal) 표준 서식 지정자로, 숫자를 최소 4자리의 10진수로 표현합니다. 코드가 간결하고 의미가 명확하며, 음수 값도 자동으로 처리되므로 안전한 방식입니다.

using System;
namespace DemoApplication{
    class Program{
        public static void Main(){
            int number = 5;
            Console.WriteLine("Number: {0}", number);
            var numberString = number.ToString("D4");
            Console.WriteLine("Padded String: {0}", numberString);
            Console.ReadLine();
        }
    }
}

실행 결과

Number: 5
Padded String: 0005

4. 문자열 보간 사용

$ 접두사를 붙인 보간 문자열 안에서 서식 지정자를 그대로 적용할 수 있습니다. C# 6 이상에서 사용할 수 있으며, 가독성이 뛰어나 최신 C# 코드에서 널리 활용됩니다.

using System;
namespace DemoApplication{
    class Program{
        public static void Main(){
            int number = 5;
            Console.WriteLine("Number: {0}", number);
            var numberString = $"{number:0000}";
            Console.WriteLine("Padded String: {0}", numberString);
            Console.ReadLine();
        }
    }
}

실행 결과

Number: 5
Padded String: 0005

마무리

네 가지 방법 모두 동일하게 “0005”라는 결과를 얻을 수 있습니다. 상황에 따른 선택 기준은 다음과 같습니다.

  • 이미 문자열로 변환된 값에 추가로 패딩이 필요하다면 PadLeft
  • 숫자 서식을 명확하게 지정하고 싶다면 ToString(“0000”) 또는 D4
  • 문자열 조합과 함께 자연스럽게 서식을 적용하고 싶다면 문자열 보간