C #의 문자열에서 {0}은 (는) 무엇을 의미합니까?


85

다음과 같은 사전에서 :

Dictionary<string, string> openWith = new Dictionary<string, string>();

openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");

Console.WriteLine("For key = \"rtf\", value = {0}.", openWith["rtf"]);

출력은 다음과 같습니다.

키 = "rtf"값 = wordpad.exe

무슨 {0}뜻입니까?

답변:


180

형식화 된 문자열을 인쇄하고 있습니다. {0}는 형식 문자열 뒤에 첫 번째 매개 변수를 삽입하는 것을 의미합니다. 이 경우 "rtf"키와 관련된 값입니다.

비슷한 String.Format의 경우

//            Format string                    {0}           {1}
String.Format("This {0}.  The value is {1}.",  "is a test",  42 ) 

"This is a test . The value is 42 " 문자열을 생성합니다 .

표현식을 사용하고 값을 여러 번 인쇄 할 수도 있습니다.

//            Format string              {0} {1}  {2}
String.Format("Fib: {0}, {0}, {1}, {2}", 1,  1+1, 1+2) 

산출 "Fib : 1 , 1 , 2 , 3 "

복합 서식에 대해 설명하는 http://msdn.microsoft.com/en-us/library/txafckwd.aspx 에서 자세한 내용을 참조하십시오 .


25

문자열의 자리 표시 자입니다.

예를 들면

string b = "world.";

Console.WriteLine("Hello {0}", b);

이 출력을 생성합니다.

Hello world.

또한 원하는만큼 많은 자리 표시자를 가질 수 있습니다. 이것은 또한 작동합니다 String.Format:

string b = "world.";
string a = String.Format("Hello {0}", b);

Console.WriteLine(a);

그리고 여전히 동일한 결과를 얻을 수 있습니다.


11

인쇄하려는 값 {0} {1},, 등 외에 형식을 지정할 수 있습니다. 예를 들어 {0,4}는 4 개의 공백으로 채워진 값입니다.

여러 가지 기본 제공 형식 지정자가 있으며 추가로 직접 만들 수 있습니다. 괜찮은 자습서 / 목록은 C #의 문자열 형식 지정을 참조하세요 . 또한 여기 에 FAQ가 있습니다 .


6

나중에 참조 할 수 있도록 Visual Studio에서 메서드 이름 (예 : WriteLine)에 커서를 놓고 키를 눌러 F1해당 컨텍스트에 대한 도움말을 표시 할 수 있습니다. String.Format()이 경우 주변을 파헤쳐 보면 많은 유용한 정보와 함께 당신을 찾을 수 있습니다 .

선택 항목을 강조 표시 (예 : 더블 클릭 또는 드래그 선택)하고 치는 F1것은 문맥이 아닌 문자열 검색 (유용한 것을 찾는 데 짜증나는 경향이 있음) 만 수행하므로 커서를 내부 아무 곳에 나 배치해야합니다. 강조 표시하지 않고 단어.

이는 클래스 및 기타 유형에 대한 문서화에도 유용합니다.


5

첫 번째 매개 변수의 자리 표시 자이며 귀하의 경우에는 "wordpad.exe"로 평가됩니다.

추가 매개 변수가있는 경우 {1}, 등을 사용합니다 .


4

%s형식 지정자가 내에서 작동 하는 것과 매우 유사한 매개 변수의 자리 표시 자입니다 printf.

형식을 결정하기 위해 거기에 추가 항목을 추가 할 수도 있지만 숫자 변수를 사용하면 더 의미가 있습니다 ( 예제 여기 ).


0

이것은 개체의 값을 텍스트 표현으로 변환하고 해당 표현을 문자열에 포함하기 위해 .NET Framework의 복합 서식 지정 이라고하는 것 입니다. 결과 문자열은 출력 스트림에 기록됩니다.

오버로드 된 Console.WriteLine 메서드 (String, Object) 지정된 형식 정보를 사용하여 현재 줄 종결자가 뒤에 오는 지정된 개체의 텍스트 표현을 표준 출력 스트림에 씁니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.