ASCIIEncoding Constructor


Initializes a new instance of the ASCIIEncoding class.

public ASCIIEncoding ();
Public Sub New ()


The following example demonstrates how to create a new ASCIIEncoding instance and display the name of the encoding.

using namespace System;
using namespace System::Text;
int main()
   ASCIIEncoding^ ascii = gcnew ASCIIEncoding;
   String^ encodingName = ascii->EncodingName;
   Console::WriteLine( "Encoding name: {0}", encodingName );

using System;
using System.Text;

class ASCIIEncodingExample {
    public static void Main() {
        ASCIIEncoding ascii = new ASCIIEncoding();
        String encodingName = ascii.EncodingName;
        Console.WriteLine("Encoding name: " + encodingName);
Imports System.Text

Class ASCIIEncodingExample   
    Public Shared Sub Main()
        Dim ascii As New ASCIIEncoding()
        Dim encodingName As String = ascii.EncodingName
        Console.WriteLine("Encoding name: " & encodingName)
    End Sub
End Class



The ASCIIEncoding class does not provide error detection. For security reasons, you should use the UTF8Encoding, UnicodeEncoding, or UTF32Encoding class and enable error detection.

If you choose to use ASCII encoding, this constructor may not provide the appropriate fallback behavior for your application. It uses the EncoderReplacementFallback and DecoderReplacementFallback classes to replace every character outside the range of U+0000 through U+007F with a question mark (?). Instead, you can call the Encoding.GetEncoding(Int32, EncoderFallback, DecoderFallback) or Encoding.GetEncoding(String, EncoderFallback, DecoderFallback) method and pass it EncoderExceptionFallback and DecoderExceptionFallback objects to use exception fallback.


ASCIIEncoding supports only the Unicode character values between U+0000 and U+007F. Therefore, UTF8Encoding, UnicodeEncoding, and UTF32Encoding are better suited for globalized applications.

Applies to