Programing/C#

C# 프로그래밍의 기초: 문자열 포맷팅

유니얼 2024. 2. 27. 03:14
728x90

문자열 포맷팅은 데이터를 보다 가독성 있게 표시하기 위해 매우 중요한 기술입니다. C#에서는 문자열 보간(String Interpolation)과 형식 지정자(Format Specifiers)를 사용하여 데이터를 보기 좋게 포맷팅할 수 있습니다. 이 글에서는 이러한 포맷팅 기술을 활용하여 복잡한 데이터를 쉽게 표현하는 방법을 알아보겠습니다.

문자열 포맷팅의 기초

C#에서 문자열 포맷팅은 주로 두 가지 방법으로 이루어집니다: 문자열 보간과 형식 지정자입니다.

문자열 보간 (String Interpolation)

문자열 보간은 C# 6.0에서 도입된 기능으로, $ 기호를 사용하여 문자열 내에 변수나 표현식의 값을 직접 삽입할 수 있습니다. 이를 통해 복잡한 문자열을 쉽게 구성할 수 있으며, 코드의 가독성을 높이는 데 큰 도움이 됩니다.

string name = "John";
int age = 30;
string message = $"Name: {name}, Age: {age}";
Console.WriteLine(message);
// 출력: Name: John, Age: 30

위 코드에서 $"Name: {name}, Age: {age}"는 문자열 보간을 사용하여 name과 age 변수의 값을 문자열에 직접 삽입한 것입니다. 이렇게 하면 코드를 작성하거나 읽는 사람이 쉽게 이해할 수 있습니다.

형식 지정자 (Format Specifiers)

형식 지정자는 데이터를 특정 형식으로 표시하고자 할 때 사용됩니다. 예를 들어, 소수점 이하의 자릿수를 제한하거나, 숫자를 통화 형식으로 표시하는 등의 작업을 할 수 있습니다. 이는 데이터를 보다 명확하게 표현하는 데 유용합니다.

double pi = 3.14159265;
string formattedPi = $"Pi is {pi:F2}";
Console.WriteLine(formattedPi);
// 출력: Pi is 3.14

위 예제에서 "{pi:F2}"는 소수점 이하 두 자리까지의 pi 값을 문자열에 삽입합니다. 이처럼 형식 지정자를 사용하면 원하는 방식으로 데이터를 세밀하게 포맷팅할 수 있습니다.

다양한 문자열 포맷팅 예제

아래는 문자열 보간과 형식 지정자를 사용한 다양한 포맷팅 예제입니다.

1. 통화 형식 지정자 사용

데이터를 통화 형식으로 표시할 때는 C 형식 지정자를 사용합니다.

decimal price = 199.99m;
string formattedPrice = $"Price: {price:C}";
Console.WriteLine(formattedPrice);
// 출력: Price: $199.99

2. 날짜 형식 지정자 사용

날짜를 특정 형식으로 표시하고 싶을 때는 DateTime 객체와 형식 지정자를 함께 사용합니다.

DateTime today = DateTime.Now;
string formattedDate = $"Today is {today:yyyy-MM-dd}";
Console.WriteLine(formattedDate);
// 출력: Today is 2024-08-17

3. 정수에 대한 자리수 고정

숫자를 특정 자리수로 고정하여 표시할 때는 D 형식 지정자를 사용합니다.

int number = 1234;
string formattedNumber = $"Number: {number:D8}";
Console.WriteLine(formattedNumber);
// 출력: Number: 00001234

전체 예제 코드

아래는 위에서 설명한 내용을 포함한 전체 예제 코드입니다:

using System;

namespace Chapter3_String
{
    public class Class_1
    {
        public void Run()
        {
            // 문자열 보간을 사용한 문자열 포맷팅
            string name = "John";
            int age = 30;
            string message = $"Name: {name}, Age: {age}";
            Console.WriteLine(message);

            // 형식 지정자를 사용한 문자열 포맷팅
            double pi = 3.14159265;
            string formattedPi = $"Pi is {pi:F2}"; // 소수점 아래 두 자리까지 표시
            Console.WriteLine(formattedPi);

            // 통화 형식 지정자 사용 예제
            decimal price = 199.99m;
            string formattedPrice = $"Price: {price:C}"; // 통화 형식으로 표시
            Console.WriteLine(formattedPrice);

            // 날짜 형식 지정자 사용 예제
            DateTime today = DateTime.Now;
            string formattedDate = $"Today is {today:yyyy-MM-dd}"; // "년-월-일" 형식으로 날짜 표시
            Console.WriteLine(formattedDate);

            // 정수에 대한 형식 지정자 사용 예제 (숫자에 대한 자리수 고정)
            int number = 1234;
            string formattedNumber = $"Number: {number:D8}"; // 8자리 숫자로 표시, 부족한 자리는 0으로 채움
            Console.WriteLine(formattedNumber);
        }
    }
}

결론

문자열 포맷팅은 프로그래밍에서 데이터를 명확하고 가독성 있게 표시하기 위한 중요한 도구입니다. C#에서는 문자열 보간과 형식 지정자를 통해 복잡한 데이터를 쉽게 조합하고 표시할 수 있습니다. 이러한 기술은 로깅, 사용자 인터페이스, 데이터 출력 등 다양한 상황에서 매우 유용하게 사용됩니다.

반응형