ASCIIEncoding Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt een ASCII-tekencodering van Unicode-tekens.
public ref class ASCIIEncoding : System::Text::Encoding
public class ASCIIEncoding : System.Text.Encoding
[System.Serializable]
public class ASCIIEncoding : System.Text.Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class ASCIIEncoding : System.Text.Encoding
type ASCIIEncoding = class
inherit Encoding
[<System.Serializable>]
type ASCIIEncoding = class
inherit Encoding
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ASCIIEncoding = class
inherit Encoding
Public Class ASCIIEncoding
Inherits Encoding
- Overname
- Kenmerken
Voorbeelden
In het volgende voorbeeld ziet u hoe u Unicode-tekens coderen in ASCII. Let op het verlies van gegevens die optreden wanneer uw toepassing ASCIIEncoding Unicode-tekens buiten het ASCII-bereik coderen.
using System;
using System.Text;
class ASCIIEncodingExample {
public static void Main() {
// The encoding.
ASCIIEncoding ascii = new ASCIIEncoding();
// A Unicode string with two characters outside the ASCII code range.
String unicodeString =
"This Unicode string contains two characters " +
"with codes outside the ASCII code range, " +
"Pi (\u03a0) and Sigma (\u03a3).";
Console.WriteLine("Original string:");
Console.WriteLine(unicodeString);
// Save positions of the special characters for later reference.
int indexOfPi = unicodeString.IndexOf('\u03a0');
int indexOfSigma = unicodeString.IndexOf('\u03a3');
// Encode string.
Byte[] encodedBytes = ascii.GetBytes(unicodeString);
Console.WriteLine();
Console.WriteLine("Encoded bytes:");
foreach (Byte b in encodedBytes) {
Console.Write("[{0}]", b);
}
Console.WriteLine();
// Notice that the special characters have been replaced with
// the value 63, which is the ASCII character code for '?'.
Console.WriteLine();
Console.WriteLine(
"Value at position of Pi character: {0}",
encodedBytes[indexOfPi]
);
Console.WriteLine(
"Value at position of Sigma character: {0}",
encodedBytes[indexOfSigma]
);
// Decode bytes back to string.
// Notice missing Pi and Sigma characters.
String decodedString = ascii.GetString(encodedBytes);
Console.WriteLine();
Console.WriteLine("Decoded bytes:");
Console.WriteLine(decodedString);
}
}
// The example displays the following output:
// Original string:
// This Unicode string contains two characters with codes outside the ASCII code ra
// nge, Pi (Π) and Sigma (Σ).
//
// Encoded bytes:
// [84][104][105][115][32][85][110][105][99][111][100][101][32][115][116][114][105]
// [110][103][32][99][111][110][116][97][105][110][115][32][116][119][111][32][99][
// 104][97][114][97][99][116][101][114][115][32][119][105][116][104][32][99][111][1
// 00][101][115][32][111][117][116][115][105][100][101][32][116][104][101][32][65][
// 83][67][73][73][32][99][111][100][101][32][114][97][110][103][101][44][32][80][1
// 05][32][40][63][41][32][97][110][100][32][83][105][103][109][97][32][40][63][41]
// [46]
//
// Value at position of Pi character: 63
// Value at position of Sigma character: 63
//
// Decoded bytes:
// This Unicode string contains two characters with codes outside the ASCII code ra
// nge, Pi (?) and Sigma (?).
Imports System.Text
Class ASCIIEncodingExample
Public Shared Sub Main()
' The encoding.
Dim ascii As New ASCIIEncoding()
' A Unicode string with two characters outside the ASCII code range.
Dim unicodeString As String = _
"This Unicode string contains two characters " & _
"with codes outside the ASCII code range, " & _
"Pi (" & ChrW(928) & ") and Sigma (" & ChrW(931) & ")."
Console.WriteLine("Original string:")
Console.WriteLine(unicodeString)
' Save positions of the special characters for later reference.
Dim indexOfPi As Integer = unicodeString.IndexOf(ChrW(928))
Dim indexOfSigma As Integer = unicodeString.IndexOf(ChrW(931))
' Encode string.
Dim encodedBytes As Byte() = ascii.GetBytes(unicodeString)
Console.WriteLine()
Console.WriteLine("Encoded bytes:")
Dim b As Byte
For Each b In encodedBytes
Console.Write("[{0}]", b)
Next b
Console.WriteLine()
' Notice that the special characters have been replaced with
' the value 63, which is the ASCII character code for '?'.
Console.WriteLine()
Console.WriteLine( _
"Value at position of Pi character: {0}", _
encodedBytes(indexOfPi) _
)
Console.WriteLine( _
"Value at position of Sigma character: {0}", _
encodedBytes(indexOfSigma) _
)
' Decode bytes back to string.
' Notice missing Pi and Sigma characters.
Dim decodedString As String = ascii.GetString(encodedBytes)
Console.WriteLine()
Console.WriteLine("Decoded bytes:")
Console.WriteLine(decodedString)
End Sub
End Class
' The example displays the following output:
' Original string:
' This Unicode string contains two characters with codes outside the ASCII code ra
' nge, Pi (Π) and Sigma (Σ).
'
' Encoded bytes:
' [84][104][105][115][32][85][110][105][99][111][100][101][32][115][116][114][105]
' [110][103][32][99][111][110][116][97][105][110][115][32][116][119][111][32][99][
' 104][97][114][97][99][116][101][114][115][32][119][105][116][104][32][99][111][1
' 00][101][115][32][111][117][116][115][105][100][101][32][116][104][101][32][65][
' 83][67][73][73][32][99][111][100][101][32][114][97][110][103][101][44][32][80][1
' 05][32][40][63][41][32][97][110][100][32][83][105][103][109][97][32][40][63][41]
' [46]
'
' Value at position of Pi character: 63
' Value at position of Sigma character: 63
'
' Decoded bytes:
' This Unicode string contains two characters with codes outside the ASCII code ra
' nge, Pi (?) and Sigma (?).
Opmerkingen
Encoding is het proces van het transformeren van een set Unicode-tekens in een reeks bytes. Decodering is het proces van het transformeren van een reeks gecodeerde bytes in een set Unicode-tekens.
ASCIIEncoding komt overeen met de Windows codepagina 20127. Omdat ASCII een 7-bits codering is, zijn ASCII-tekens beperkt tot de laagste 128 Unicode-tekens, van U+0000 tot U+007F. Als u de standaardcoderingsprogramma gebruikt die wordt geretourneerd door de Encoding.ASCII eigenschap of de ASCIIEncoding constructor, worden tekens buiten dat bereik vervangen door een vraagteken (?) voordat de coderingsbewerking wordt uitgevoerd. Omdat de ASCIIEncoding klasse slechts een beperkt tekenset ondersteunt, zijn de UTF8Encoding, UnicodeEncodingen UTF32Encoding klassen beter geschikt voor geglobaliseerde toepassingen. De volgende overwegingen kunnen u helpen om te bepalen of u wilt gebruiken ASCIIEncoding:
Voor sommige protocollen is ASCII of een subset van ASCII vereist. In deze gevallen is ASCII-codering geschikt.
Als er een 8-bits codering wordt verwacht, is ASCII waarschijnlijk niet de juiste keuze. Overweeg in plaats daarvan UTF8 te gebruiken in plaats van ASCII. Voor de tekens U+0000 tot en met U+007F zijn de resultaten identiek, maar alle Unicode-tekens zijn zichtbaar in UTF-8, waardoor gegevensverlies wordt voorkomen.
Caution
ASCIIEncoding biedt geen foutdetectie. Om veiligheidsredenen moet u foutdetectie gebruiken UTF8Encodingof UnicodeEncodingUTF32Encoding inschakelen.
De GetByteCount methode bepaalt hoeveel bytes resulteren in het coderen van een set Unicode-tekens en de GetBytes methode voert de daadwerkelijke codering uit.
Op dezelfde manier bepaalt de GetCharCount methode hoeveel tekens resulteren in het decoderen van een reeks bytes, en de GetChars en GetString methoden voeren de daadwerkelijke decodering uit.
Houd er rekening mee dat de standaardconstructor ASCIIEncoding op zichzelf mogelijk niet het juiste gedrag voor uw toepassing heeft. U kunt overwegen om de EncoderFallback of DecoderFallback eigenschap EncoderExceptionFallback in te stellen op of DecoderExceptionFallback om reeksen met de 8e bitsset te voorkomen. Aangepast gedrag is mogelijk ook geschikt voor deze gevallen.
Constructors
| Name | Description |
|---|---|
| ASCIIEncoding() |
Initialiseert een nieuw exemplaar van de ASCIIEncoding klasse. |
Eigenschappen
| Name | Description |
|---|---|
| BodyName |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een naam voor de huidige codering die kan worden gebruikt met hoofdtags van de e-mailagent. (Overgenomen van Encoding) |
| CodePage |
Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de codepagina-id van de huidige Encodingop. (Overgenomen van Encoding) |
| DecoderFallback |
Hiermee wordt het DecoderFallback object voor het huidige Encoding object opgehaald of ingesteld. (Overgenomen van Encoding) |
| EncoderFallback |
Hiermee wordt het EncoderFallback object voor het huidige Encoding object opgehaald of ingesteld. (Overgenomen van Encoding) |
| EncodingName |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt de leesbare beschrijving van de huidige codering opgehaald. (Overgenomen van Encoding) |
| HeaderName |
Wanneer deze worden overschreven in een afgeleide klasse, krijgt u een naam voor de huidige codering die kan worden gebruikt met headertags van de e-mailagent. (Overgenomen van Encoding) |
| IsBrowserDisplay |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een waarde die aangeeft of de huidige codering kan worden gebruikt door browserclients om inhoud weer te geven. (Overgenomen van Encoding) |
| IsBrowserSave |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een waarde die aangeeft of de huidige codering kan worden gebruikt door browserclients voor het opslaan van inhoud. (Overgenomen van Encoding) |
| IsMailNewsDisplay |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een waarde die aangeeft of de huidige codering kan worden gebruikt door mail- en nieuwsclients om inhoud weer te geven. (Overgenomen van Encoding) |
| IsMailNewsSave |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een waarde die aangeeft of de huidige codering kan worden gebruikt door e-mail- en nieuwsclients om inhoud op te slaan. (Overgenomen van Encoding) |
| IsReadOnly |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde opgehaald die aangeeft of de huidige codering het kenmerk Alleen-lezen heeft. (Overgenomen van Encoding) |
| IsSingleByte |
Hiermee wordt een waarde opgehaald die aangeeft of de huidige codering gebruikmaakt van codepunten met één byte. |
| Preamble |
Wanneer deze wordt overschreven in een afgeleide klasse, retourneert u een bereik met de reeks bytes die de gebruikte codering aangeeft. (Overgenomen van Encoding) |
| WebName |
Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de naam op die is geregistreerd bij de Internet Assigned Numbers Authority (IANA) voor de huidige codering. (Overgenomen van Encoding) |
| WindowsCodePage |
Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de Windows codepagina van het besturingssysteem op die het meest overeenkomt met de huidige codering. (Overgenomen van Encoding) |
Methoden
| Name | Description |
|---|---|
| Clone() |
Wanneer deze wordt overschreven in een afgeleide klasse, maakt u een ondiepe kopie van het huidige Encoding object. (Overgenomen van Encoding) |
| Equals(Object) |
Bepaalt of de opgegeven Object waarde gelijk is aan het huidige exemplaar. (Overgenomen van Encoding) |
| GetByteCount(Char[], Int32, Int32) |
Berekent het aantal bytes dat wordt geproduceerd door een set tekens van de opgegeven tekenmatrix te coderen. |
| GetByteCount(Char[]) |
Wanneer deze wordt overschreven in een afgeleide klasse, berekent u het aantal bytes dat wordt geproduceerd door alle tekens in de opgegeven tekenmatrix te coderen. (Overgenomen van Encoding) |
| GetByteCount(Char*, Int32) |
Berekent het aantal bytes dat wordt geproduceerd door een set tekens te coderen die beginnen bij de opgegeven tekenwijzer. |
| GetByteCount(ReadOnlySpan<Char>) |
Wanneer deze wordt overschreven in een afgeleide klasse, berekent u het aantal bytes dat wordt geproduceerd door de tekens in het opgegeven tekenbereik te coderen. (Overgenomen van Encoding) |
| GetByteCount(String, Int32, Int32) |
Wanneer deze wordt overschreven in een afgeleide klasse, berekent u het aantal bytes dat wordt geproduceerd door een set tekens van de opgegeven tekenreeks te coderen. (Overgenomen van Encoding) |
| GetByteCount(String) |
Berekent het aantal bytes dat wordt geproduceerd door de tekens in de opgegeven Stringcode te coderen. |
| GetBytes(Char[], Int32, Int32, Byte[], Int32) |
Codeert een set tekens van de opgegeven tekenmatrix in de opgegeven bytematrix. |
| GetBytes(Char[], Int32, Int32) |
Wanneer deze wordt overschreven in een afgeleide klasse, codeert u een set tekens van de opgegeven tekenmatrix in een reeks bytes. (Overgenomen van Encoding) |
| GetBytes(Char[]) |
Wanneer deze worden overschreven in een afgeleide klasse, codeert u alle tekens in de opgegeven tekenmatrix in een reeks bytes. (Overgenomen van Encoding) |
| GetBytes(Char*, Int32, Byte*, Int32) |
Codeert een reeks tekens die beginnen bij de opgegeven tekenwijzer in een reeks bytes die zijn opgeslagen vanaf de opgegeven byte-aanwijzer. |
| GetBytes(ReadOnlySpan<Char>, Span<Byte>) |
Wanneer deze wordt overschreven in een afgeleide klasse, codeert u in een reeks bytes die een reeks tekens bevat van de opgegeven alleen-lezen periode. (Overgenomen van Encoding) |
| GetBytes(String, Int32, Int32, Byte[], Int32) |
Codeert een set tekens van de opgegeven in de opgegeven String bytematrix. |
| GetBytes(String, Int32, Int32) |
Wanneer deze wordt overschreven in een afgeleide klasse, codeert u in een matrix van bytes het aantal tekens dat is opgegeven in |
| GetBytes(String) |
Wanneer deze worden overschreven in een afgeleide klasse, codeert u alle tekens in de opgegeven tekenreeks in een reeks bytes. (Overgenomen van Encoding) |
| GetCharCount(Byte[], Int32, Int32) |
Berekent het aantal tekens dat wordt geproduceerd door het decoderen van een reeks bytes van de opgegeven bytematrix. |
| GetCharCount(Byte[]) |
Wanneer deze wordt overschreven in een afgeleide klasse, berekent u het aantal tekens dat wordt geproduceerd door alle bytes in de opgegeven bytematrix te decoderen. (Overgenomen van Encoding) |
| GetCharCount(Byte*, Int32) |
Berekent het aantal tekens dat wordt geproduceerd door het decoderen van een reeks bytes die beginnen bij de opgegeven byteaanwijzer. |
| GetCharCount(ReadOnlySpan<Byte>) |
Wanneer deze wordt overschreven in een afgeleide klasse, berekent u het aantal tekens dat wordt geproduceerd door de opgegeven bytespanne met het kenmerk Alleen-lezen te decoderen. (Overgenomen van Encoding) |
| GetChars(Byte[], Int32, Int32, Char[], Int32) |
Decodeert een reeks bytes van de opgegeven bytematrix in de opgegeven tekenmatrix. |
| GetChars(Byte[], Int32, Int32) |
Wanneer deze wordt overschreven in een afgeleide klasse, ontsleutelt u een reeks bytes van de opgegeven bytematrix in een reeks tekens. (Overgenomen van Encoding) |
| GetChars(Byte[]) |
Wanneer deze wordt overschreven in een afgeleide klasse, ontsleutelt u alle bytes in de opgegeven bytematrix in een set tekens. (Overgenomen van Encoding) |
| GetChars(Byte*, Int32, Char*, Int32) |
Decodeert een reeks bytes die beginnen bij de opgegeven byteaanwijzer in een set tekens die zijn opgeslagen vanaf de opgegeven tekenaanwijzer. |
| GetChars(ReadOnlySpan<Byte>, Span<Char>) |
Wanneer deze wordt overschreven in een afgeleide klasse, decodeert u alle bytes in de opgegeven bytespanne met het kenmerk Alleen-lezen in een tekenbereik. (Overgenomen van Encoding) |
| GetDecoder() |
Hiermee haalt u een decoder op waarmee een ASCII-gecodeerde reeks bytes wordt geconverteerd naar een reeks Unicode-tekens. |
| GetDecoder() |
Wanneer deze wordt overschreven in een afgeleide klasse, verkrijgt u een decoder waarmee een gecodeerde reeks bytes wordt geconverteerd naar een reeks tekens. (Overgenomen van Encoding) |
| GetEncoder() |
Hiermee verkrijgt u een coderingsprogramma waarmee een reeks Unicode-tekens wordt geconverteerd naar een ASCII-gecodeerde reeks bytes. |
| GetEncoder() |
Wanneer deze wordt overschreven in een afgeleide klasse, verkrijgt u een encoder waarmee een reeks Unicode-tekens wordt geconverteerd naar een gecodeerde reeks bytes. (Overgenomen van Encoding) |
| GetHashCode() |
Retourneert de hash-code voor het huidige exemplaar. (Overgenomen van Encoding) |
| GetMaxByteCount(Int32) |
Berekent het maximum aantal bytes dat wordt geproduceerd door het opgegeven aantal tekens te coderen. |
| GetMaxCharCount(Int32) |
Berekent het maximum aantal tekens dat wordt geproduceerd door het opgegeven aantal bytes te decoderen. |
| GetPreamble() |
Wanneer deze wordt overschreven in een afgeleide klasse, retourneert u een reeks bytes die de gebruikte codering aangeeft. (Overgenomen van Encoding) |
| GetString(Byte[], Int32, Int32) |
Decodeert een bereik van bytes van een bytematrix in een tekenreeks. |
| GetString(Byte[]) |
Vertegenwoordigt een ASCII-tekencodering van Unicode-tekens. |
| GetString(Byte[]) |
Wanneer deze wordt overschreven in een afgeleide klasse, ontsleutelt u alle bytes in de opgegeven bytematrix in een tekenreeks. (Overgenomen van Encoding) |
| GetString(Byte*, Int32) |
Wanneer deze wordt overschreven in een afgeleide klasse, ontsleutelt u een opgegeven aantal bytes dat begint bij een opgegeven adres in een tekenreeks. (Overgenomen van Encoding) |
| GetString(ReadOnlySpan<Byte>) |
Wanneer deze wordt overschreven in een afgeleide klasse, ontsleutelt u alle bytes in de opgegeven byte span in een tekenreeks. (Overgenomen van Encoding) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| IsAlwaysNormalized() |
Hiermee wordt een waarde opgehaald die aangeeft of de huidige codering altijd is genormaliseerd, met behulp van de standaardnormalisatievorm. (Overgenomen van Encoding) |
| IsAlwaysNormalized(NormalizationForm) |
Wanneer deze wordt overschreven in een afgeleide klasse, krijgt u een waarde die aangeeft of de huidige codering altijd is genormaliseerd, met behulp van de opgegeven normalisatievorm. (Overgenomen van Encoding) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |