System.Text.Encoding is built into .NET. It reads and writes UTF-8, UTF-16 and UTF-32, detects BOMs in StreamReader, and with the CodePagesEncodingProvider adds Windows code pages, ISO-8859, Shift_JIS, GBK, Big5 and the other legacy encodings. It doesn’t guess the encoding of files without a BOM.
UTF.Unknown detects the encoding of files, streams and byte arrays. It’s a port of uchardet and returns a System.Text.Encoding you can pass straight to StreamReader or File.ReadAllText.
System.Text.EncodingSystem.Text.Encoding reads and writes text files in UTF-8, UTF-16 and legacy code pages in .NET. How to handle BOMs, read Windows-1252 files.
UTF.UnknownUTF.Unknown detects the character encoding of text files, streams and byte arrays in C# and .NET, based on uchardet. How to install it.