Console.OutputEncoding 屬性

定義

取得或設定主控台用來寫入輸出的編碼方式。

public static System.Text.Encoding OutputEncoding { get; set; }
public static System.Text.Encoding OutputEncoding { get; [System.Runtime.Versioning.UnsupportedOSPlatform("android")] [System.Runtime.Versioning.UnsupportedOSPlatform("ios")] [System.Runtime.Versioning.UnsupportedOSPlatform("tvos")] set; }

屬性值

用來寫入主控台輸出的編碼方式。

屬性

例外狀況

設定作業中的屬性值為 null

執行這項作業期間發生錯誤。

您的應用程式沒有執行這項作業的權限。

備註

主控台會使用輸出編碼,將應用程式寫入的字元轉譯成對應的主控台顯示字元。 主控台使用的預設字碼頁是由系統地區設定所決定。

從 .NET Framework 4 開始,屬性取得作業可能會傳回快取的值,而不是主控台目前的輸出編碼。 如果屬性的值 OutputEncoding 是由屬性指派 OutputEncoding 以外的一些方法修改,例如呼叫 Windows SetConsoleOutputCP 函式,就可能發生此情況。

給呼叫者的注意事項

在 Unicode 編碼中,類別 Console 支援使用 類別的 UTF-8 編碼 UTF8Encoding ,從 .NET Framework 4.5 開始,它支援使用 類別的 UnicodeEncoding UTF-16 編碼。 不支援使用 類別的 UTF32Encoding UTF-32 編碼。 嘗試將輸出編碼設定為 UTF-32 會擲回 IOException

請注意,成功向主控台顯示 Unicode 字元需要下列專案:

  • 主控台必須使用 TrueType 字型,例如 Lucida Console 或 Consolas 來顯示字元。

  • 主控台所使用的字型必須定義要顯示的特定圖像或圖像。 如果基底字不包含該字元的定義,主控台可以利用字型連結來顯示連結字型中的字元。

For more information about support for Unicode encoding by the console, see the "Unicode Support for the Console" section in the Console class.

適用於

產品 版本
.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
.NET Framework 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.3, 1.4, 1.6, 2.0, 2.1