Encoding Klass

Definition

Representerar en teckenkodning.

public ref class Encoding abstract
public ref class Encoding abstract : ICloneable
public abstract class Encoding
public abstract class Encoding : ICloneable
[System.Serializable]
public abstract class Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Encoding : ICloneable
type Encoding = class
type Encoding = class
    interface ICloneable
[<System.Serializable>]
type Encoding = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Encoding = class
    interface ICloneable
Public MustInherit Class Encoding
Public MustInherit Class Encoding
Implements ICloneable
Arv
Encoding
Härledda
Attribut
Implementeringar

Exempel

I följande exempel konverteras en sträng från en kodning till en annan.

Note

Matrisen byte[] är den enda typen i det här exemplet som innehåller kodade data. Typerna .NET Char och String är själva Unicode, så GetChars-anropet avkodar data tillbaka till Unicode.

using System;
using System.Text;

class Example
{
   static void Main()
   {
      string unicodeString = "This string contains the unicode character Pi (\u03a0)";

      // Create two different encodings.
      Encoding ascii = Encoding.ASCII;
      Encoding unicode = Encoding.Unicode;

      // Convert the string into a byte array.
      byte[] unicodeBytes = unicode.GetBytes(unicodeString);

      // Perform the conversion from one encoding to the other.
      byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);
         
      // Convert the new byte[] into a char[] and then into a string.
      char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
      string asciiString = new string(asciiChars);

      // Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString);
      Console.WriteLine("Ascii converted string: {0}", asciiString);
   }
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
Imports System.Text

Class Example
   Shared Sub Main()
      Dim unicodeString As String = "This string contains the unicode character Pi (" & ChrW(&H03A0) & ")"

      ' Create two different encodings.
      Dim ascii As Encoding = Encoding.ASCII
      Dim unicode As Encoding = Encoding.Unicode

      ' Convert the string into a byte array.
      Dim unicodeBytes As Byte() = unicode.GetBytes(unicodeString)

      ' Perform the conversion from one encoding to the other.
      Dim asciiBytes As Byte() = Encoding.Convert(unicode, ascii, unicodeBytes)

      ' Convert the new byte array into a char array and then into a string.
      Dim asciiChars(ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)-1) As Char
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0)
      Dim asciiString As New String(asciiChars)

      ' Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString)
      Console.WriteLine("Ascii converted string: {0}", asciiString)
   End Sub
End Class
' The example displays the following output:
'    Original string: This string contains the unicode character Pi (Π)
'    Ascii converted string: This string contains the unicode character Pi (?)

Kommentarer

Mer information om det här API:et finns i Kompletterande API-kommentarer för kodning.

Konstruktorer

Name Description
Encoding()

Initierar en ny instans av Encoding klassen.

Encoding(Int32, EncoderFallback, DecoderFallback)

Initierar en ny instans av Encoding klassen som motsvarar den angivna kodsidan med de angivna reservstrategierna för kodare och avkodare.

Encoding(Int32)

Initierar en ny instans av Encoding klassen som motsvarar den angivna kodsidan.

Egenskaper

Name Description
ASCII

Hämtar en kodning för ASCII-teckenuppsättningen (7-bitars).

BigEndianUnicode

Hämtar en kodning för UTF-16-formatet som använder den stora endianska byteordningen.

BodyName

När det åsidosätts i en härledd klass får du ett namn för den aktuella kodningen som kan användas med e-postagentens brödtexttaggar.

CodePage

När du åsidosättas i en härledd klass hämtar du kodsideidentifieraren för den aktuella Encoding.

DecoderFallback

Hämtar eller anger objektet DecoderFallback för det aktuella Encoding objektet.

Default

Hämtar standardkodningen för den här .NET implementeringen.

EncoderFallback

Hämtar eller anger objektet EncoderFallback för det aktuella Encoding objektet.

EncodingName

När den åsidosättas i en härledd klass hämtar den läsbara beskrivningen av den aktuella kodningen.

HeaderName

När det åsidosätts i en härledd klass får du ett namn för den aktuella kodningen som kan användas med rubriktaggar för e-postagenten.

IsBrowserDisplay

När den åsidosättas i en härledd klass får ett värde som anger om den aktuella kodningen kan användas av webbläsarklienter för att visa innehåll.

IsBrowserSave

När det åsidosätts i en härledd klass får ett värde som anger om den aktuella kodningen kan användas av webbläsarklienter för att spara innehåll.

IsMailNewsDisplay

När den åsidosättas i en härledd klass får du ett värde som anger om den aktuella kodningen kan användas av e-post- och nyhetsklienter för att visa innehåll.

IsMailNewsSave

När den åsidosätts i en härledd klass får du ett värde som anger om den aktuella kodningen kan användas av e-post- och nyhetsklienter för att spara innehåll.

IsReadOnly

När den åsidosättas i en härledd klass får du ett värde som anger om den aktuella kodningen är skrivskyddad.

IsSingleByte

När det åsidosättas i en härledd klass får du ett värde som anger om den aktuella kodningen använder kodpunkter med en enda byte.

Latin1

Hämtar en kodning för teckenuppsättningen Latin1 (ISO-8859-1).

Preamble

När det åsidosätts i en härledd klass returneras ett intervall som innehåller sekvensen med byte som anger den kodning som används.

Unicode

Hämtar en kodning för UTF-16-formatet med hjälp av den lilla endianska byteordningen.

UTF32

Hämtar en kodning för UTF-32-formatet med hjälp av den lilla endianska byteordningen.

UTF7
Föråldrad.

Hämtar en kodning för UTF-7-formatet.

UTF8

Hämtar en kodning för UTF-8-formatet.

WebName

När det åsidosätts i en härledd klass, hämtar det namn som registrerats med IANA (Internet Assigned Numbers Authority) för den aktuella kodningen.

WindowsCodePage

När den åsidosätts i en härledd klass hämtar den kodsida för Windows operativsystem som närmast motsvarar den aktuella kodningen.

Metoder

Name Description
Clone()

När du åsidosättas i en härledd klass skapar du en ytlig kopia av det aktuella Encoding objektet.

Convert(Encoding, Encoding, Byte[], Int32, Int32)

Konverterar ett intervall med byte i en bytematris från en kodning till en annan.

Convert(Encoding, Encoding, Byte[])

Konverterar en hel bytematris från en kodning till en annan.

CreateTranscodingStream(Stream, Encoding, Encoding, Boolean)

Skapar en Stream som används för att omkoda data mellan en inre Encoding och en yttre Encoding, som liknar Convert(Encoding, Encoding, Byte[]).

Equals(Object)

Avgör om den angivna Object är lika med den aktuella instansen.

GetByteCount(Char[], Int32, Int32)

När det åsidosättas i en härledd klass beräknas antalet byte som genereras genom att koda en uppsättning tecken från den angivna teckenmatrisen.

GetByteCount(Char[])

När det åsidosättas i en härledd klass beräknas antalet byte som skapas genom att koda alla tecken i den angivna teckenmatrisen.

GetByteCount(Char*, Int32)

När du åsidosättas i en härledd klass beräknar du antalet byte som genereras genom att koda en uppsättning tecken med början vid den angivna teckenpekaren.

GetByteCount(ReadOnlySpan<Char>)

När det åsidosättas i en härledd klass beräknas antalet byte som genereras genom att koda tecknen i det angivna teckenintervallet.

GetByteCount(String, Int32, Int32)

När du åsidosättas i en härledd klass beräknar du antalet byte som genereras genom att koda en uppsättning tecken från den angivna strängen.

GetByteCount(String)

När det åsidosättas i en härledd klass beräknas antalet byte som genereras genom att koda tecknen i den angivna strängen.

GetBytes(Char[], Int32, Int32, Byte[], Int32)

När den åsidosättas i en härledd klass kodar en uppsättning tecken från den angivna teckenmatrisen till den angivna bytematrisen.

GetBytes(Char[], Int32, Int32)

När den åsidosättas i en härledd klass kodar en uppsättning tecken från den angivna teckenmatrisen till en sekvens med byte.

GetBytes(Char[])

När det åsidosättas i en härledd klass kodas alla tecken i den angivna teckenmatrisen till en sekvens med byte.

GetBytes(Char*, Int32, Byte*, Int32)

När den åsidosätts i en härledd klass kodas en uppsättning tecken som börjar vid den angivna teckenpekaren till en sekvens med byte som lagras från och med den angivna bytepekaren.

GetBytes(ReadOnlySpan<Char>, Span<Byte>)

När det åsidosättas i en härledd klass kodar till ett intervall med byte en uppsättning tecken från det angivna skrivskyddade intervallet.

GetBytes(String, Int32, Int32, Byte[], Int32)

När den åsidosättas i en härledd klass kodar en uppsättning tecken från den angivna strängen till den angivna bytematrisen.

GetBytes(String, Int32, Int32)

När det åsidosättas i en härledd klass kodar till en matris med byte det antal tecken som anges av count i den angivna strängen, med början från den angivna index.

GetBytes(String)

När det åsidosättas i en härledd klass kodar alla tecken i den angivna strängen till en sekvens med byte.

GetCharCount(Byte[], Int32, Int32)

När det åsidosättas i en härledd klass beräknas antalet tecken som genereras genom avkodning av en sekvens med byte från den angivna bytematrisen.

GetCharCount(Byte[])

När det åsidosättas i en härledd klass beräknas antalet tecken som genereras genom avkodning av alla byte i den angivna bytematrisen.

GetCharCount(Byte*, Int32)

När det åsidosättas i en härledd klass beräknas antalet tecken som genereras genom avkodning av en sekvens med byte som börjar vid den angivna bytepekaren.

GetCharCount(ReadOnlySpan<Byte>)

När det åsidosättas i en härledd klass beräknas antalet tecken som genereras genom avkodning av det angivna skrivskyddade byteintervallet.

GetChars(Byte[], Int32, Int32, Char[], Int32)

När den åsidosättas i en härledd klass avkodar en sekvens med byte från den angivna bytematrisen till den angivna teckenmatrisen.

GetChars(Byte[], Int32, Int32)

När den åsidosättas i en härledd klass avkodas en sekvens med byte från den angivna bytematrisen till en uppsättning tecken.

GetChars(Byte[])

När de åsidosättas i en härledd klass avkodas alla byte i den angivna bytematrisen till en uppsättning tecken.

GetChars(Byte*, Int32, Char*, Int32)

När den åsidosätts i en härledd klass avkodas en sekvens med byte som börjar vid den angivna bytepekaren till en uppsättning tecken som lagras från och med den angivna teckenpekaren.

GetChars(ReadOnlySpan<Byte>, Span<Char>)

När de åsidosättas i en härledd klass avkodas alla byte i det angivna skrivskyddade byteintervallet till ett teckenintervall.

GetDecoder()

När den åsidosätts i en härledd klass hämtar en avkodare som konverterar en kodad sekvens med byte till en sekvens med tecken.

GetEncoder()

När den åsidosätts i en härledd klass hämtar den en kodare som konverterar en sekvens med Unicode-tecken till en kodad sekvens med byte.

GetEncoding(Int32, EncoderFallback, DecoderFallback)

Returnerar kodningen som är associerad med den angivna kodsideidentifieraren. Parametrar anger en felhanterare för tecken som inte kan kodas och bytesekvenser som inte kan avkodas.

GetEncoding(Int32)

Returnerar kodningen som är associerad med den angivna kodsideidentifieraren.

GetEncoding(String, EncoderFallback, DecoderFallback)

Returnerar kodningen som är associerad med det angivna kodsidenamnet. Parametrar anger en felhanterare för tecken som inte kan kodas och bytesekvenser som inte kan avkodas.

GetEncoding(String)

Returnerar kodningen som är associerad med det angivna kodsidenamnet.

GetEncodings()

Returnerar en matris som innehåller alla kodningar.

GetHashCode()

Returnerar hash-koden för den aktuella instansen.

GetMaxByteCount(Int32)

När det åsidosättas i en härledd klass beräknar det maximala antalet byte som genereras genom att koda det angivna antalet tecken.

GetMaxCharCount(Int32)

När det åsidosättas i en härledd klass beräknas det maximala antalet tecken som genereras genom avkodning av det angivna antalet byte.

GetPreamble()

När den åsidosätts i en härledd klass returnerar en sekvens med byte som anger den kodning som används.

GetString(Byte[], Int32, Int32)

När den åsidosättas i en härledd klass avkodar en sekvens med byte från den angivna bytematrisen till en sträng.

GetString(Byte[])

När de åsidosättas i en härledd klass avkodas alla byte i den angivna bytematrisen till en sträng.

GetString(Byte*, Int32)

När det åsidosättas i en härledd klass avkodas ett angivet antal byte som börjar vid en angiven adress till en sträng.

GetString(ReadOnlySpan<Byte>)

När de åsidosättas i en härledd klass avkodas alla byte i det angivna byteintervallet till en sträng.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
IsAlwaysNormalized()

Hämtar ett värde som anger om den aktuella kodningen alltid normaliseras med standardnormaliseringsformuläret.

IsAlwaysNormalized(NormalizationForm)

När den åsidosättas i en härledd klass får du ett värde som anger om den aktuella kodningen alltid normaliseras med hjälp av det angivna normaliseringsformuläret.

MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
RegisterProvider(EncodingProvider)

Registrerar en kodningsprovider.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32)

Kodar till ett intervall med byte en uppsättning tecken från det angivna skrivskyddade intervallet om målet är tillräckligt stort.

TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32)

Avkodar till ett intervall av tecken en uppsättning byte från det angivna skrivskyddade intervallet om målet är tillräckligt stort.

Tilläggsmetoder

Name Description
GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>)

Avkodar angivna ReadOnlySequence<T> till bytes med den angivna Encoding och skriver resultatet till writer.

GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>)

Kodar angivna ReadOnlySequence<T> till bytes med den angivna Encoding och matar ut resultatet till bytes.

GetBytes(Encoding, ReadOnlySequence<Char>)

Kodar angivna ReadOnlySequence<T> i en Byte matris med den angivna Encoding.

GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>)

Kodar angivna ReadOnlySpan<T> till bytes med den angivna Encoding och skriver resultatet till writer.

GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>)

Avkodar angivna ReadOnlySequence<T> till chars med den angivna Encoding och skriver resultatet till writer.

GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>)

Avkodar angivna ReadOnlySequence<T> till chars med den angivna Encoding och matar ut resultatet till chars.

GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>)

Avkodar angivna ReadOnlySpan<T> till chars med den angivna Encoding och skriver resultatet till writer.

GetString(Encoding, ReadOnlySequence<Byte>)

Avkodar angiven ReadOnlySequence<T> till en String med angiven Encoding.

Gäller för

Se även