何でio::Errorにファイル名入ってないんだろう? 不便だなーと思ってたけど
検索してみたら、前は入ってたのに1.0リリース前に削除されたんだとさ

https://internals.rust-lang.org/t/add-filename-information-to-io-error/