.NET프로그래밍/C# 3.5 SP1

32. 스트링포맷(String.Format)

holland14 2009. 8. 7. 11:20

// String.Format() 메서드 : 문자열 연결 관련 주요 기능 제공
using System;

public class 스트링포맷
{
    public static void Main()
    {
        int i = 1234;
        double d = 1234.5678;
        string s = "1234";

        // 서로 다른 데이터형식을 묶을 때 문자열로 묶어준다.
        string result = String.Format("{0} {1} {2}", i, d, s);
        Console.WriteLine("{0}", result);
        // 정수 또는 실수형 자릿수 표현 가능
        result = String.Format("{0:###,###}", i);
        Console.WriteLine(result); // 1,234
        Console.WriteLine(String.Format("{0:###,###.##}", d)); // 1,234.57
        Console.WriteLine(String.Format("{0:###,###.##0000}", d)); // 1,234.567800
        Console.WriteLine(String.Format("{0:000,###}", i)); // 001,234
        Console.WriteLine(String.Format("{0:000,###}", s)); // 1234
        Console.WriteLine(String.Format("{0:000,###}", Convert.ToInt32(s))); // 001,234
        // 긴문자열 연결
        result = String.Format(
            "{0}\n{1}\n{2}"
            , "<script type='text/css'>"
            , String.Format("window.alert(\"{0}\")", "안녕하세요.")
            , "</script>");
        Console.WriteLine(result);
        // 긴문자열 연결 : @기호 : 마치 HTML의 <pre> 태그처럼...
        result = @"
            <script type='text/javascript'>
            window.alert('반갑습니다.');
            </script>
        ";
        Console.WriteLine(result);
        // 긴문자열 연결: +연산자
        result =
            "<script>"
            + "alert('안녕');"
            + "</script>";
        Console.WriteLine(result);
        //채우기
        string data = "1234";
        Console.WriteLine("{0}", data.PadLeft(10, '*')); // ******1234
        Console.WriteLine("{0}", data.PadRight(10, '*')); // 1234******
    }
}