Convert any type of encoded input string to UTF-8 with standard .Net functionality / BCL
===

In one of our applications users can upload plaintext files into the system and later on these files are read and worked on. Unfortunately users have a wide variety of encodings for these files (Ansi, UTF-*, Unicode, etc etc) but in the end we need the content as UTF-8 strings.

Is there any way to take *any* input string (encoding-wise) without explicitely knowing what encoding it is and convert to UTF-8 with .Net standard functionality?