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
Значение 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 считаются равными, если они соответствуют одной и той же кодовой странице, а их EncoderFallback
DecoderFallback
объекты равны. В частности, на производных страницах кода есть кодовая страница 0, а их резервные варианты обычно находятся null
Nothing
в Visual Basic .NET. Поэтому все они считаются равными друг другу. Один из них состоит в том, что когда Equals используется для заполнения хэш-таблицы, все производные кодировки сравниваются равными и попадают в один и тот же слот хэш-таблицы.
Продукт | Версии |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: