TextEncoder.Encode 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| Encode(String) |
編碼提供的字串,並將編碼後的文字以新字串形式回傳。 |
| Encode(TextWriter, String) |
將指定的字串編碼成物件 TextWriter 。 |
| Encode(TextWriter, Char[], Int32, Int32) |
從陣列中編碼字元並寫入 TextWriter 物件。 |
| Encode(TextWriter, String, Int32, Int32) |
編碼一個子字串並將其寫入物件 TextWriter 。 |
| Encode(ReadOnlySpan<Char>, Span<Char>, Int32, Int32, Boolean) |
編碼所提供的字元。 |
Encode(String)
編碼提供的字串,並將編碼後的文字以新字串形式回傳。
public:
virtual System::String ^ Encode(System::String ^ value);
public virtual string Encode(string value);
abstract member Encode : string -> string
override this.Encode : string -> string
Public Overridable Function Encode (value As String) As String
參數
- value
- String
要編碼的字串。
傳回
那個編碼字串。
例外狀況
value 是 null。
這個 TryEncodeUnicodeScalar(Int32, Char*, Int32, Int32) 方法失敗了。 編碼器無法正確實作 MaxOutputCharactersPerInputCharacter 。
適用於
Encode(TextWriter, String)
將指定的字串編碼成物件 TextWriter 。
public:
void Encode(System::IO::TextWriter ^ output, System::String ^ value);
public void Encode(System.IO.TextWriter output, string value);
member this.Encode : System.IO.TextWriter * string -> unit
Public Sub Encode (output As TextWriter, value As String)
參數
- output
- TextWriter
寫入編碼文字的串流。
- value
- String
要編碼的字串。
適用於
Encode(TextWriter, Char[], Int32, Int32)
從陣列中編碼字元並寫入 TextWriter 物件。
public:
virtual void Encode(System::IO::TextWriter ^ output, cli::array <char> ^ value, int startIndex, int characterCount);
public virtual void Encode(System.IO.TextWriter output, char[] value, int startIndex, int characterCount);
abstract member Encode : System.IO.TextWriter * char[] * int * int -> unit
override this.Encode : System.IO.TextWriter * char[] * int * int -> unit
Public Overridable Sub Encode (output As TextWriter, value As Char(), startIndex As Integer, characterCount As Integer)
參數
- output
- TextWriter
寫入編碼文字的串流。
- value
- Char[]
要編碼的字元陣列。
- startIndex
- Int32
第一個要編碼字元的陣列索引。
- characterCount
- Int32
陣列中要編碼的字元數。
例外狀況
output 是 null。
這個 TryEncodeUnicodeScalar(Int32, Char*, Int32, Int32) 方法失敗了。 編碼器無法正確實作 MaxOutputCharactersPerInputCharacter 。
value 是 null。
startIndex 超出射程範圍。
characterCount 超出射程範圍。
適用於
Encode(TextWriter, String, Int32, Int32)
編碼一個子字串並將其寫入物件 TextWriter 。
public:
virtual void Encode(System::IO::TextWriter ^ output, System::String ^ value, int startIndex, int characterCount);
public virtual void Encode(System.IO.TextWriter output, string value, int startIndex, int characterCount);
abstract member Encode : System.IO.TextWriter * string * int * int -> unit
override this.Encode : System.IO.TextWriter * string * int * int -> unit
Public Overridable Sub Encode (output As TextWriter, value As String, startIndex As Integer, characterCount As Integer)
參數
- output
- TextWriter
寫入編碼文字的串流。
- value
- String
該字串的子字串將被編碼。
- startIndex
- Int32
子字串起始的索引。
- characterCount
- Int32
子字串中的字元數。
例外狀況
output 是 null。
這個 TryEncodeUnicodeScalar(Int32, Char*, Int32, Int32) 方法失敗了。 編碼器無法正確實作 MaxOutputCharactersPerInputCharacter 。
value 是 null。
startIndex 超出射程範圍。
characterCount 超出射程範圍。
適用於
Encode(ReadOnlySpan<Char>, Span<Char>, Int32, Int32, Boolean)
編碼所提供的字元。
public virtual System.Buffers.OperationStatus Encode(ReadOnlySpan<char> source, Span<char> destination, out int charsConsumed, out int charsWritten, bool isFinalBlock = true);
abstract member Encode : ReadOnlySpan<char> * Span<char> * int * int * bool -> System.Buffers.OperationStatus
override this.Encode : ReadOnlySpan<char> * Span<char> * int * int * bool -> System.Buffers.OperationStatus
Public Overridable Function Encode (source As ReadOnlySpan(Of Char), destination As Span(Of Char), ByRef charsConsumed As Integer, ByRef charsWritten As Integer, Optional isFinalBlock As Boolean = true) As OperationStatus
參數
- source
- ReadOnlySpan<Char>
一個包含要編碼字元的來源緩衝區。
- charsConsumed
- Int32
從緩衝區消耗 source 的字元數。
- charsWritten
- Int32
寫入 destination 緩衝區的字元數。
- isFinalBlock
- Boolean
true以表示沒有其他來源資料需要編碼;否則,。 false
傳回
一個描述編碼操作結果的枚舉值。
備註
緩衝sourcedestination區和必須不重疊。