다음을 통해 공유


String.Empty 필드

빈 문자열을 나타냅니다. 이 필드는 읽기 전용입니다.

네임스페이스: System
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
Public Shared ReadOnly Empty As String
‘사용 방법
Dim value As String

value = String.Empty
public static readonly string Empty
public:
static initonly String^ Empty
public static final String Empty
public static final var Empty : String

설명

이 필드의 값은 길이가 0인 문자열 ""입니다.

예제

다음 코드 예제에서는 Empty 필드를 사용하는 방법을 보여 줍니다.

첫 번째 예제에서는 다른 필드의 값이 Null 참조(Visual Basic의 경우 Nothing)인 경우 Empty 문자열이 기본값으로 반환됩니다.

   Dim myBinding As DataBinding = DataBindings("Text")
   If Not (myBinding Is Nothing) Then
      Return myBinding.Expression
   End If
   Return [String].Empty
End Get
DataBinding myBinding = DataBindings["Text"];
if (myBinding != null)
{
   return myBinding.Expression;
}
return String.Empty;
DataBinding^ myBinding = DataBindings[ "Text" ];
if ( myBinding != nullptr )
{
   return myBinding->Expression;
}

return String::Empty;
DataBinding myBinding = get_DataBindings().get_Item("Text");
if (myBinding != null) {
    return myBinding.get_Expression();
}
return("");

두 번째 예제에서는 부분 문자열을 테스트하기 위해 Empty 문자열이 Compare에 사용됩니다.

Dim myString As String = "abc"
Dim test1 As Boolean = String.Compare(myString.Substring(2, 1), "c") = 0 ' This is true.
myString.Substring(3, 1) ' This throws ArgumentOutOfRangeException.
Dim test2 As Boolean = String.Compare(myString.Substring(3, 0), String.Empty) = 0 ' This is true.
String myString = "abc";
bool test1 = String.Compare(myString.Substring(2, 1), "c") == 0; // This is true.
myString.Substring(3, 1); // This throws ArgumentOutOfRangeException.
bool test2 = String.Compare(myString.Substring(3, 0), String.Empty) == 0; // This is true.
String^ myString = "abc";
bool test1 = String::Compare( myString->Substring( 2, 1 ), "c" ) == 0; // This is true.

myString->Substring( 3, 1 ); // This throws ArgumentOutOfRangeException.
bool test2 = String::Compare( myString->Substring( 3, 0 ), String::Empty ) == 0; // This is true.
String myString = "abc";
// This is true.
boolean test1 = String.Compare(myString.Substring(2, 1), "c") == 0;        
myString.Substring(3, 1); // This throws ArgumentOutOfRangeException.
// This is true.
boolean test2 = String.Compare(myString.Substring(3, 0), " ") == 0;        
var myString : String = "abc";
var test1 : boolean = String.Compare(myString.Substring(2, 1), "c") == 0; // This is true.
myString.Substring(3, 1);  // This throws ArgumentOutOfRangeException.
var test2 : boolean = String.Compare(myString.Substring(3, 0), String.Empty) == 0; // This is true.

세 번째 예제에서는 XML 구문 분석에 대해 결정하기 위해 Empty 문자열이 XPathNavigator 개체의 결정 블록에 사용됩니다.

public shared sub RecursiveWalk(nav as XPathNavigator)

   select case nav.NodeType
     case XPathNodeType.Element
        if (nav.Prefix=String.Empty)
          Console.WriteLine("<{0}>", nav.LocalName)
        else
          Console.Write("<{0}:{1}>", nav.Prefix, nav.LocalName)
          Console.WriteLine("  "+ nav.NamespaceURI)
        end if
     case XPathNodeType.Text
        Console.WriteLine("  " + nav.Value)
   end select

   if ( nav.MoveToFirstChild() )
      do
         RecursiveWalk(nav)
      loop while ( nav.MoveToNext() )

      nav.MoveToParent()
      if (nav.NodeType = XPathNodeType.Element)
        Console.WriteLine("</{0}>", nav.Name)
      end if
   end if

end sub
public static void RecursiveWalk(XPathNavigator nav)
{
   switch (nav.NodeType){
     case XPathNodeType.Element:
        if (nav.Prefix==String.Empty)
          Console.WriteLine("<{0}>", nav.LocalName);
        else
          Console.Write("<{0}:{1}>", nav.Prefix, nav.LocalName);
          Console.WriteLine("\t"+ nav.NamespaceURI);
        break;
     case XPathNodeType.Text:
        Console.WriteLine("\t" + nav.Value);
        break;
    }

    if ( nav.MoveToFirstChild() )
   {
      do{
         RecursiveWalk(nav);
      } while ( nav.MoveToNext() );

      nav.MoveToParent();
      if (nav.NodeType == XPathNodeType.Element)
        Console.WriteLine("</{0}>", nav.Name);
    }
}   
static void RecursiveWalk( XPathNavigator^ nav )
{
   switch ( nav->NodeType )
   {
      case XPathNodeType::Element:
         if ( nav->Prefix == String::Empty )
                     Console::WriteLine( "< {0}>", nav->LocalName );
         else
                     Console::Write( "< {0}: {1}>", nav->Prefix, nav->LocalName );

         Console::WriteLine( "\t {0}", nav->NamespaceURI );
         break;

      case XPathNodeType::Text:
         Console::WriteLine( "\t {0}", nav->Value );
         break;
   }
   if ( nav->MoveToFirstChild() )
   {
      do
      {
         RecursiveWalk( nav );
      }
      while ( nav->MoveToNext() );
      nav->MoveToParent();
      if ( nav->NodeType == XPathNodeType::Element )
               Console::WriteLine( "</ {0}>", nav->Name );
   }
}
public static void RecursiveWalk(XPathNavigator nav)
{
    switch (nav.get_NodeType()) {
        case XPathNodeType.Element:
            if (nav.get_Prefix().Equals("")){
                Console.WriteLine("<{0}>", nav.get_LocalName());
            }
            else {
                Console.Write("<{0}:{1}>", nav.get_Prefix(),
                    nav.get_LocalName());
            }
            Console.WriteLine("\t" + nav.get_NamespaceURI());
            break;

        case XPathNodeType.Text:
            Console.WriteLine("\t" + nav.get_Value());
            break;
    }

    if (nav.MoveToFirstChild()) {
        do {
            RecursiveWalk(nav);
        } while (nav.MoveToNext());

        nav.MoveToParent();
        if (nav.get_NodeType() .Equals(XPathNodeType.Element)) {
            Console.WriteLine("</{0}>", nav.get_Name());
        }
    }
} //RecursiveWalk

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

String 클래스
String 멤버
System 네임스페이스