概要 先日、勢いで java.io.File を使っていたコードを Path と Files で置き換えたので、既存のコードを書き換える、という観点で紹介します。すでに NIO2 をバリバリ使いこなしている方は、この記事を読んでも何の気付きもないと思います。 ちなみに JDK7 からの新しいファイル関連 API は NIO2(New I/O 2)と呼ぶそうで、無印は1.4の時代に追加された Channel や Charset のことを指すらしいです。 背景 File クラスには下記2つの機能があります。 ファイルの置き場所を定義する ファイルを操作する それを JDK7 の NIO2 では下記の通り分割したそうです。 ファイルの置き場所を定義する……java.nio.file.Path インターフェイス ファイルを操作する……java.nio.file.Files 今後 File クラスが
![java.io.File のコードを java.nio.Path と java.nio.Files を使って書き直す - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/ea6f216e3dce5ecaa619218af39345c77ef565fb/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9amF2YS5pby5GaWxlJTIwJUUzJTgxJUFFJUUzJTgyJUIzJUUzJTgzJUJDJUUzJTgzJTg5JUUzJTgyJTkyJTIwamF2YS5uaW8uUGF0aCUyMCVFMyU4MSVBOCUyMGphdmEubmlvLkZpbGVzJTIwJUUzJTgyJTkyJUU0JUJEJUJGJUUzJTgxJUEzJUUzJTgxJUE2JUU2JTlCJUI4JUUzJTgxJThEJUU3JTlCJUI0JUUzJTgxJTk5JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz00NDVjYTU1ZjUwMjliYmQzNjk2NjRhYjg2ODNlMTVjYQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDB0b2FzdGtpZGpwJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0zM2IwZGYzYzRiMDdhM2I5NDA5OWY5MTI5OGQ0M2MxMw%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dc7750ce5100c7094af8cd44dc01f7d37)