2010-07-24 12 views

답변

4

StringBuilder.AppendFormat String.Format입니다. 동일한 작업을 수행하지만 형식 문자열은 in a different format입니다. String.Format를 사용

:

string buf = string.Format("{0}", frame); 

StringBuilder.AppendFormat 사용 :

StringBuilder builder = new StringBuilder(); 
builder.AppendFormat("{0}", frame); 
3

가장 기본적인 버전은 String.Format입니다.

string result = String.Format(format, arg0, arg1, ..., argn); 

그러나 많은 다른 클래스는 TextWriter에서 파생 된 모든 클래스를 포함하여 비슷한을 지원합니다. 몇 가지 예는이 질문에 있습니다 Which methods in the 3.5 framework have a String.Format-like signature?

  • Console.Write
  • StreamWriter.Write
  • StringWriter.Write
  • StringBuilder.AppendFormat
  • 더 많은 ...
0

당신은 문자열로 지정하는 경우, String.Format

을 사용하십시오.
var newString = String.Format("Number: {0}", 10); 

많은 양의 문자열을 추가하려는 경우 StringBuilder.AppendFormat을 사용하십시오. 그들은 묶여 공간을 절약 할 수 있기 때문에 장기적으로 당신을 구할 수 있습니다.

var result = new StringBuilder().AppendFormat("{0}", 10).AppendFormat("{0}", 11).ToString(); 
0

무엇 정확한 아날로그 될 수 있을까? C 및 C#에서

  1. 문자열이 다르게 구현되어 있기 때문에

더 정확한 아날로그가 없습니다. C에서 문자열은 변경 가능한 char 배열이며, .NET에서는 불변의 개체 인스턴스입니다. 그래서 .NET에서 당신은 snprintf이처럼, 당신은 단지 (String.Format, Console.WriteLine 등의) C 매우 다른 .NET에서 사용

  • 형식 문자열을 완전히 새로운 문자열을 만듭니다 "버퍼에 기록"하지 않습니다 다른 답변에서 언급 한 바와 같이 (다른 자리 형식)

  • 는 가장 가까운 상응하는 String.Format이지만, 확실히 정확한 아날로그

    아니다
    관련 문제