Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetBytes() [4/4]

static long System.Text.EncodingExtensions.GetBytes ( this Encoding encoding,
ReadOnlySpan< char > chars,
IBufferWriter< byte > writer )
inlinestatic

Definition at line 8 of file EncodingExtensions.cs.

9 {
10 if (encoding == null)
11 {
12 throw new ArgumentNullException("encoding");
13 }
14 if (writer == null)
15 {
16 throw new ArgumentNullException("writer");
17 }
18 if (chars.Length <= 1048576)
19 {
20 int byteCount = encoding.GetByteCount(chars);
22 int bytes = encoding.GetBytes(chars, span);
23 writer.Advance(bytes);
24 return bytes;
25 }
26 encoding.GetEncoder().Convert(chars, writer, flush: true, out var bytesUsed, out var _);
27 return bytesUsed;
28 }

References System.byteCount, System.bytes, System.chars, System.Text.Encoding.GetByteCount(), System.Text.Encoding.GetBytes(), System.Text.Encoding.GetEncoder(), and System.writer.