본문 바로가기
C#

C# double to string 변환 – 실수 소수점 자릿수 지정 방법 정리

by 코딩이라구 2025. 5. 14.

C#에서 실수(double)를 문자열(String)로 변환하는 두 가지 방법을 소개합니다. 원하는 소수점 자릿수를 지정하는 형식(format) 옵션도 함께 알아보겠습니다.

C# double to string 변환 예제
C# double to string 변환 – 실수 소수점 자릿수 지정 방법

 

C# 숫자를 문자열로 변환하는 방법 (int to string) →

 

C# 문자열을 숫자로 변환하는 방법 (string to int) →


C# double to string 형변환

 

1. ToString() 메서드 활용

C# double 클래스에는 ToString()이라는 편리한 문자열 변환 메서드가 존재합니다. 실수형 숫자 값을 문자열 표현 방식으로 변환합니다.

 

기본 사용법

// 변수 선언
double d = 123.4566;
string str = "";

// ToString() 메서드를 사용하여 double 값을 문자열로 변환할 수 있습니다.
str = d.ToString();

// 결과
123.4566

Format 지정 사용법

  • ToString("F") - 고정 소수점
  • ToString("N") - 숫자
  • ToString("0") - 0으로 채우기
  • "F" 이외의 지정자는 모두 숫자 3자리당 ","를 포함하여 변환합니다.
  • 소수점 자릿수를 지정하고 싶을 경우, 문자 뒤에 숫자를 이용하여 표시합니다.
    (소수점 3자리까지 지정 "F3" / "N3")
  • "0"의 경우 빈자리는 0으로 채우고, 값이 있을 경우 해당 값으로 변환됩니다.
  • "0"의 경우 소수점 자릿수를 지정할 때 반올림됩니다.
// 변수 선언
double d = 1234.4567;
string str = "";

// ToString(string format) 메소드를 이용한 문자열 변환
// ToString("F") - 기본적으로 소수점 2자리까지 변환하여 출력
str = d.ToString("F");			// 1234.45
str = d.ToString("F4");			// 1234.4567

// ToString("N") - 기본적으로 소수점 2자리까지 변환하여 출력
str = d.ToString("N");			// 1,234.45
str = d.ToString("N3");			// 1,234.456

// ToString("0") - 표시된 소수점 자리수만큼 변환하여 출력, 빈 자리는 0으로 채움
str = d.ToString("0");			// 1234
str = d.ToString("0.00");		// 1234.46 (반올림)
str = d.ToString("0.0000");		// 1234.4567
str = d.ToString("00000.00000");	// 01234.45670

 

📌 "0" 포맷은 자릿수를 고정하고, 빈 자리는 0으로 채우며 반올림 처리됩니다.

 

2. String.Format() 사용법

String 클래스의 Format 함수를 이용하여 실수를 다양한 형태의 문자열로 변환합니다. 이때 0, #을 이용하여 기본적인 소수점 자릿수 표현 방식을 지정할 수 있습니다.

// 변수 선언
double d = 1234.4567;
string str = "";

// String.format(format, double) 메소드를 이용한 문자열 변환
// 소수점 3자리까지 표현
str = String.Format("{0:0.000}", d);	// 1234.457
str = String.Format("{0:0.###}", d);	// 출력 결과: 1234.457 (소수점 셋째 자리 반올림)

// 소수점 2자리까지 표현
d = 1234.4;
str = String.Format("{0:0.00}", d);	// 1234.40
str = String.Format("{0:0.##}", d);	// 1234.4

// 소수점 1자리까지 표현
d = 1234.0;
str = String.Format("{0:0.0}", d);	// 1234.0
str = String.Format("{0:0.#}", d);	// 1234

 

🔍 #은 값이 없으면 생략되고, 0은 무조건 자리수를 채워줍니다.


✅ 요약

  • ToString()은 가장 직관적이고 간단한 변환 방법입니다.
  • 포맷 지정자를 활용하면 원하는 자리수로 정확히 표현할 수 있습니다.
  • String.Format()은 복잡한 문자열 템플릿이 필요한 상황에서 유리합니다.

함께 보기 좋은 글 :

C#에서 숫자를 문자로 형변환 (int to string) →

 

C#에서 문자를 숫자로 형변환 (string to int) →

 

댓글