Prefer UTF-8 to the .NET Shift_JIS
Test Shift_JIS encoding
Reset document in case of encoding mistake
Throw exception on encoding mistake and also pick decoder in case of BOM