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

◆ DecodeHeaderValue()

static string System.Net.Mime.MimeBasePart.DecodeHeaderValue ( string value)
inlinestaticpackageinherited

Definition at line 139 of file MimeBasePart.cs.

140 {
141 if (string.IsNullOrEmpty(value))
142 {
143 return string.Empty;
144 }
145 string text = string.Empty;
146 string[] array = value.Split(s_headerValueSplitChars, StringSplitOptions.RemoveEmptyEntries);
147 string[] array2 = array;
148 foreach (string text2 in array2)
149 {
150 string[] array3 = text2.Split(s_questionMarkSplitChars);
151 if (array3.Length != 5 || array3[0] != "=" || array3[4] != "=")
152 {
153 return value;
154 }
155 string name = array3[1];
156 bool useBase64Encoding = array3[2] == "B";
157 byte[] bytes = Encoding.ASCII.GetBytes(array3[3]);
158 EncodedStreamFactory encodedStreamFactory = new EncodedStreamFactory();
159 IEncodableStream encoderForHeader = encodedStreamFactory.GetEncoderForHeader(Encoding.GetEncoding(name), useBase64Encoding, 0);
160 int count = encoderForHeader.DecodeBytes(bytes, 0, bytes.Length);
161 Encoding encoding = Encoding.GetEncoding(name);
162 text += encoding.GetString(bytes, 0, count);
163 }
164 return text;
165 }
static readonly char[] s_questionMarkSplitChars
static readonly char[] s_headerValueSplitChars
static Encoding GetEncoding(int codepage)
Definition Encoding.cs:593
static Encoding ASCII
Definition Encoding.cs:511
unsafe string GetString(byte *bytes, int byteCount)
Definition Encoding.cs:973

References System.array, System.Text.Encoding.ASCII, System.bytes, System.count, System.Net.Mime.IEncodableStream.DecodeBytes(), System.Net.Mime.EncodedStreamFactory.GetEncoderForHeader(), System.Text.Encoding.GetEncoding(), System.Text.Encoding.GetString(), System.Net.Mime.MimeBasePart.s_headerValueSplitChars, System.Net.Mime.MimeBasePart.s_questionMarkSplitChars, System.text, and System.value.