private int DefineShift(Encoding enc)
{
if (enc.IsSingleByte)
return 0;
if (enc.HeaderName == "unicodeFFFE")
return 0;//UTF16 BE
if (enc.HeaderName == "utf-16")
return 1;//UTF16 LE
if (enc.HeaderName == "utf-32BE")
return 0;//UTF32 BE
if (enc.HeaderName == "utf-32")
return 3;//UTF32 LE
return 0;
}