日本語を含みうる文字に関しては変換はほぼ妥当にできる
ただし、変換元のバイト列のエンコーディングと変換先のエンコーディングに関して大雑把にでも理解指定できているということが大前提
申告に虚偽があっても勝手に不可逆変換して情報を取り戻せなくなるNKFなんかよりはよっぽど誠実

ただしとても使い辛い
想像や無知で申告されたエンコーディング名をそのまま使うとほぼ確実に変換失敗する(HTMLのmeta charset名とか、「○○だから××だろう」とか)
これは「世の中が悪い」んではあるんだけども
まあエラーで止まってくれるんだったらその情報を頼りにエラー回復処理すればいいじゃん