Section 12.11: ToString() 메소드와의 비교
String.Format()
메소드는 각종 데이터를 문자열로 서식화 시키는 데에 있어서 매우 유용한 것은 사실이나, 아래와 같이 하나의 객체를 간단히 변환하고자 할 때 사용하기에는 너무 복잡하다는 느낌이 들 수도 있다:
String.Format("{0:C}", money); // "$42.00" 로 변환된다
조금 더 간단한 방법으로는, C# 의 모든 객체들에서 제공하고 있는 ToString()
메소드를 사용하는 것이다. 이는 모든 표준 및 사용자 서식 문자열을 동일하게 제공하지만, 하나의 인자만을 사용하기 때문에 복잡한 parameter mapping 정보를 기술하지 않아도 된다:
money.ToString("C"); // "$42.00" 로 변환된다
서식 사용상의 제약 사항 및 주의점
위와 같은 접근법은 몇몇 경우에 좀 더 손쉽게 사용할 수 있으나, ToString()
만으로는 String.Format()
에서 제공하던 문자열 좌/우측에 여백 문자 추가 (padding) 기능이 제공되지 않는 문제점이 있다:
String.Format("{0,10:C}", money); // " $42.00" 로 변환된다
ToString()
메소드를 이용하면서도 동일한 결과를 얻길 원한다면, 여백문자를 삽입할 좌/우측 방향에 따라 PadLeft()
혹은 PadRight()
를 각각 사용할 수 있다:
money.ToString("C").PadLeft(10); // " $42.00" 로 변환된다
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
[출처] https://books.goalkicker.com/CSharpBook/
반응형
'번역 > C# Notes for Professionals' 카테고리의 다른 글
13.2: System.Text.StringBuilder 를 활용하여 문자열 이어붙이기 (0) | 2021.02.23 |
---|---|
13.1: 문자열 연결 (concatenation) 을 위한 '+' 연산자 사용법 (0) | 2021.02.23 |
12.10: String.Format() 표현식 내에서 중괄호 escape 처리하기 (0) | 2021.02.22 |
12.9: ToString() (0) | 2021.02.19 |
12.8: 숫자 관련 서식 (0) | 2021.02.19 |