fix invalid byte sequence in UTF-8
add test
Merge branch 'test' into fix_invalid_byte_UTF8
review
Merge branch 'fix_invalid_byte_UTF8'
replace invalid utf8 with ?
support non-utf-8 byes and reserve_data
cleanup some code for readability
add option to specify to replace invalid chars (default: not to replace chars)