あんまり納得できないかな
http://d.hatena.ne.jp/cero-t/20100104/1262625958
言いたいことはわかるし、底大事なところだけれどもプラットフォームのエンコーディングを使いたい場合というのは結構あるので個人的には問題点だというのには抵抗がある。
同じLinuxでもUTF-8の環境とEUCの場合とあるよね?WindowsならSJISの可能性が高い。
XMLとかならUTF-8固定とかエンコーディング指定あるのでかまわないけど、それ以外ではどーなんだろうと。
全角文字を2バイトとして処理したい場合もあるし3バイトとして処理したい場合もさまざまだよね?ファイル名のバイト数チェックとか。
プラットフォームに左右されない部分が前提ならばそうだけど、バリデーションと一くくりにするには無理があるはず。