static public bool check(uni_bom_t typ, byte[] uni, byte[] range) { for (int i = 0; i < uni.Length; i++) { if (uni[i] != range[i]) { return(false); } } return(true); }
static public bool check(uni_bom_t typ, byte[] range) { byte[] ck; switch (typ) { case uni_bom_t.UTF32_BE: return(check(typ, bom_utf32_be, range)); case uni_bom_t.UTF32_LE: return(check(typ, bom_utf32_le, range)); case uni_bom_t.UTF16_BE: return(check(typ, bom_utf16_be, range)); case uni_bom_t.UTF16_LE: return(check(typ, bom_utf16_be, range)); case uni_bom_t.UTF8: return(check(typ, bom_utf8, range)); default: return(false); } }
/// returns the default (Ansi) Encoding if no encoding is found static public System.Text.Encoding get_encoder(byte[] range) { uni_bom_t t = check(range); if (t == uni_bom_t.Unknown) { return(System.Text.Encoding.Default); } switch (t) { case uni_bom_t.UTF32_BE: case uni_bom_t.UTF32_LE: return(System.Text.Encoding.UTF32); case uni_bom_t.UTF16_BE: case uni_bom_t.UTF16_LE: return(System.Text.Encoding.Unicode); case uni_bom_t.UTF8: return(System.Text.Encoding.UTF8); } return(System.Text.Encoding.Default); }