Поделиться через


Encoding.Equals(Object) Метод

Определение

Определяет, равен ли указанный объект Object текущему экземпляру.

public:
 override bool Equals(System::Object ^ value);
public override bool Equals (object value);
public override bool Equals (object? value);
override this.Equals : obj -> bool
Public Overrides Function Equals (value As Object) As Boolean

Параметры

value
Object

Object для сравнения с текущим экземпляром.

Возвращаемое значение

Значение true, если value является экземпляром Encoding, равным текущему экземпляру; в противном случае — значение false.

Примеры

В следующем примере выполняется получение двух экземпляров одной и той же кодировки (по одной кодовой странице, другой по имени) и проверка их равенства.

using namespace System;
using namespace System::Text;
int main()
{
   
   // Get a UTF-32 encoding by codepage.
   Encoding^ e1 = Encoding::GetEncoding( 12000 );
   
   // Get a UTF-32 encoding by name.
   Encoding^ e2 = Encoding::GetEncoding( "utf-32" );
   
   // Check their equality.
   Console::WriteLine( "e1 equals e2? {0}", e1->Equals( e2 ) );
}

/* 
This code produces the following output.

e1 equals e2? True

*/
using System;
using System.Text;

public class SamplesEncoding  {

   public static void Main()  {

      // Get a UTF-32 encoding by codepage.
      Encoding e1 = Encoding.GetEncoding( 12000 );

      // Get a UTF-32 encoding by name.
      Encoding e2 = Encoding.GetEncoding( "utf-32" );

      // Check their equality.
      Console.WriteLine( "e1 equals e2? {0}", e1.Equals( e2 ) );
   }
}


/* 
This code produces the following output.

e1 equals e2? True

*/
Imports System.Text

Public Class SamplesEncoding   

   Public Shared Sub Main()

      ' Get a UTF-32 encoding by codepage.
      Dim e1 As Encoding = Encoding.GetEncoding(12000)

      ' Get a UTF-32 encoding by name.
      Dim e2 As Encoding = Encoding.GetEncoding("utf-32")

      ' Check their equality.
      Console.WriteLine("e1 equals e2? {0}", e1.Equals(e2))

   End Sub

End Class


'This code produces the following output.
'
'e1 equals e2? True

Комментарии

Два экземпляра Encoding считаются равными, если они соответствуют одной и той же кодовой странице, а их EncoderFallbackDecoderFallback объекты равны. В частности, на производных страницах кода есть кодовая страница 0, а их резервные варианты обычно находятся nullNothing в Visual Basic .NET. Поэтому все они считаются равными друг другу. Один из них состоит в том, что когда Equals используется для заполнения хэш-таблицы, все производные кодировки сравниваются равными и попадают в один и тот же слот хэш-таблицы.

Применяется к

См. также раздел