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

◆ DetectEncoding()

Encoding System.Xml.XmlTextReaderImpl.DetectEncoding ( )
inlineprivate

Definition at line 3277 of file XmlTextReaderImpl.cs.

3278 {
3279 if (_ps.bytesUsed < 2)
3280 {
3281 return null;
3282 }
3283 int num = (_ps.bytes[0] << 8) | _ps.bytes[1];
3284 int num2 = ((_ps.bytesUsed >= 4) ? ((_ps.bytes[2] << 8) | _ps.bytes[3]) : 0);
3285 switch (num)
3286 {
3287 case 0:
3288 switch (num2)
3289 {
3290 case 65279:
3291 return Ucs4Encoding.UCS4_Bigendian;
3292 case 60:
3293 return Ucs4Encoding.UCS4_Bigendian;
3294 case 65534:
3295 return Ucs4Encoding.UCS4_2143;
3296 case 15360:
3297 return Ucs4Encoding.UCS4_2143;
3298 }
3299 break;
3300 case 65279:
3301 if (num2 == 0)
3302 {
3303 return Ucs4Encoding.UCS4_3412;
3304 }
3306 case 65534:
3307 if (num2 == 0)
3308 {
3309 return Ucs4Encoding.UCS4_Littleendian;
3310 }
3311 return Encoding.Unicode;
3312 case 15360:
3313 if (num2 == 0)
3314 {
3315 return Ucs4Encoding.UCS4_Littleendian;
3316 }
3317 return Encoding.Unicode;
3318 case 60:
3319 if (num2 == 0)
3320 {
3321 return Ucs4Encoding.UCS4_3412;
3322 }
3324 case 19567:
3325 if (num2 == 42900)
3326 {
3328 }
3329 break;
3330 case 61371:
3331 if ((num2 & 0xFF00) == 48896)
3332 {
3334 }
3335 break;
3336 }
3337 return null;
3338 }
static string Xml_UnknownEncoding
Definition SR.cs:52
Definition SR.cs:7
static Encoding BigEndianUnicode
Definition Encoding.cs:521
static Encoding Unicode
Definition Encoding.cs:519
void Throw(int pos, string res, string arg)

References System.Xml.XmlTextReaderImpl._ps, System.Text.Encoding.BigEndianUnicode, System.Xml.XmlTextReaderImpl.ParsingState.bytes, System.Xml.XmlTextReaderImpl.ParsingState.bytesUsed, System.Xml.Dictionary, System.Xml.XmlTextReaderImpl.Throw(), System.Xml.Ucs4Encoding.UCS4_2143, System.Xml.Ucs4Encoding.UCS4_3412, System.Xml.Ucs4Encoding.UCS4_Bigendian, System.Xml.Ucs4Encoding.UCS4_Littleendian, System.Text.Encoding.Unicode, and System.SR.Xml_UnknownEncoding.

Referenced by System.Xml.XmlTextReaderImpl.InitStreamInput(), and System.Xml.XmlTextReaderImpl.InitStreamInputAsync().