按一下以給予評分及指教
MSDN
MSDN Library
.NET 開發
先前版本
類別庫參考
System.Text
 UTF8Encoding 建構函式 (Boolean)

  開啟低頻寬檢視
本頁僅適用於
Microsoft Visual Studio 2005/.NET Framework 2.0

其他版本也適用於下列軟體:
.NET Framework 類別庫
UTF8Encoding 建構函式 (Boolean)

初始化 UTF8Encoding 類別的新執行個體。參數會指定是否提供 Unicode 位元組順序標記。

命名空間: System.Text
組件: mscorlib (在 mscorlib.dll 中)

Visual Basic (宣告)
Public Sub New ( _
    encoderShouldEmitUTF8Identifier As Boolean _
)
Visual Basic (使用方式)
Dim encoderShouldEmitUTF8Identifier As Boolean

Dim instance As New UTF8Encoding(encoderShouldEmitUTF8Identifier)
C#
public UTF8Encoding (
    bool encoderShouldEmitUTF8Identifier
)
C++
public:
UTF8Encoding (
    bool encoderShouldEmitUTF8Identifier
)
J#
public UTF8Encoding (
    boolean encoderShouldEmitUTF8Identifier
)
JScript
public function UTF8Encoding (
    encoderShouldEmitUTF8Identifier : boolean
)

參數

encoderShouldEmitUTF8Identifier

true 表示指定提供 Unicode 位元組順序標記,否則為 false

此建構函式會建立一個執行個體,當偵測到無效編碼方式時,此執行個體不會擲回例外狀況。

Caution note警告

基於安全考量,建議您使用接受 throwOnInvalidBytes 參數的建構函式,並將該參數設定為 true,啟用錯誤偵測。

或是,UTF8Encoding 會提供前序編碼,這會是位元組陣列,您可將它加在編碼過程所得位元組序列的前面。如果前序編碼含有位元組順序標記 (字碼指標 U+FEFF),就可以協助解碼器判斷位元組順序和轉換格式或 UTF。Unicode 位元組順序標記會序列化為 EF BB BF (以十六進位格式)。GetPreamble 方法會傳回包含位元組順序標記的位元組陣列。

如需 Unicode 編碼方式、位元組順序和位元組順序標記的詳細資訊,請參閱 http://www.unicode.org 上的<The Unicode Standard>。

下列範例示範如何建立新 UTF8Encoding 執行個體,指定編碼時應該發出 Unicode 位元組順序標記前置詞。GetPreamble 方法會傳回 Unicode 位元組順序標記前置詞,並將它顯示在主控台上。請注意,使用預設建構函式建立的 UTF8Encoding,沒有 Unicode 位元組順序標記前置詞。

Visual Basic
Imports System
Imports System.Text

Class UTF8EncodingExample
    
    Public Shared Sub Main()
        Dim utf8 As New UTF8Encoding()
        Dim utf8EmitBOM As New UTF8Encoding(True)
        
        Console.WriteLine("utf8 preamble:")
        ShowArray(utf8.GetPreamble())
        
        Console.WriteLine("utf8EmitBOM:")
        ShowArray(utf8EmitBOM.GetPreamble())
    End Sub 'Main
    
    
    Public Shared Sub ShowArray(theArray As Array)
        Dim o As Object
        For Each o In  theArray
            Console.Write("[{0}]", o)
        Next o
        Console.WriteLine()
    End Sub 'ShowArray
End Class 'UTF8EncodingExample
C#
using System;
using System.Text;

class UTF8EncodingExample {
    public static void Main() {
        UTF8Encoding utf8 = new UTF8Encoding();
        UTF8Encoding utf8EmitBOM = new UTF8Encoding(true);

        Console.WriteLine("utf8 preamble:");
        ShowArray(utf8.GetPreamble());

        Console.WriteLine("utf8EmitBOM:");
        ShowArray(utf8EmitBOM.GetPreamble());
    }

    public static void ShowArray(Array theArray) {
        foreach (Object o in theArray) {
            Console.Write("[{0}]", o);
        }
        Console.WriteLine();
    }
}
C++
using namespace System;
using namespace System::Text;
using namespace System::Collections;
void ShowArray( Array^ theArray )
{
   IEnumerator^ myEnum = theArray->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ o = safe_cast<Object^>(myEnum->Current);
      Console::Write( "[{0}]", o );
   }

   Console::WriteLine();
}

int main()
{
   UTF8Encoding^ utf8 = gcnew UTF8Encoding;
   UTF8Encoding^ utf8EmitBOM = gcnew UTF8Encoding( true );
   Console::WriteLine( "utf8 preamble:" );
   ShowArray( utf8->GetPreamble() );
   Console::WriteLine( "utf8EmitBOM:" );
   ShowArray( utf8EmitBOM->GetPreamble() );
}

J#
import System.*;
import System.Text.*;

class UTF8EncodingExample
{
    public static void main(String[] args)
    {
        UTF8Encoding utf8 = new UTF8Encoding();
        UTF8Encoding utf8EmitBOM = new UTF8Encoding(true);

        Console.WriteLine("utf8 preamble:");
        ShowArray(utf8.GetPreamble());
        Console.WriteLine("utf8EmitBOM:");
        ShowArray(utf8EmitBOM.GetPreamble());
    } //main

    public static void ShowArray(Array theArray)
    {
        Object o = null;
        for (int iCtr = 0; iCtr < theArray.get_Length(); iCtr++) {
            o = theArray.get_Item(iCtr);
            Console.Write("[{0}]", o);
        }
        Console.WriteLine();
    } //ShowArray
} //UTF8EncodingExample

Windows 98、 Windows 2000 SP4、 Windows CE、 Windows Millennium Edition、 Windows Mobile for Pocket PC、 Windows Mobile for Smartphone、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition

.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。

.NET Framework

支援版本:2.0、1.1、1.0

.NET Compact Framework

支援版本:2.0、1.0
社群內容   什麼是社群內容?
新增內容 RSS  註解
Processing
© 2009 Microsoft Corporation. 著作權所有,並保留一切權利。 使用規定  |  商標  |  隱私權聲明
Page view tracker