2016年10月5日水曜日

Pathの機能(ファイル/ディレクトリの作成)

みなさん。 こんばんは。

今日はファイルやディレクトリの作成方法について見ていきましょう。

従来のJavaSE6までのファイルやディレクトリの作成はFileクラスで生成していました。

// ディレクトリの作成
File dir = new File("dir");
dir.mkdir();
// ファイルの作成
File file = new File(dir, "test.txt");

JavaSE 7/8 からはFilesクラスのcreateFileメソッドを使用します。

// ディレクトリの作成
Path dir = Paths.get("dir");
Files.createDirectory(dir);
// ファイルを作成
Path file = dir.resolve("test.txt");
Files.createFile(file);

ファイルは作成しただけなので、ファイルの中身は何もなく、サイズは0バイトです。

もし、作成するファイルやディレクトリと同名のファイルもしくはディレクトリが存在している場合は、

FileAlreadyExistsException例外がスローされます。

また、何らかのエラーが発生した場合は IOException例外がスローされます。

書き込み権限がない場合は SecurityException例外がスローされます。

もし、複数のディレクトリを作成する場合は、 createDirectoriesメソッドを使用します。

// 複数のディレクトリを作成
Path path = Paths.get("foo/bar/baz");
Files.createDirectories(path);

createDirectoryメソッドとは異なり、createDirectoriesメソッドは同名のディレクトリが、

存在していても FileAlreadyException 例外はスローされません。

ただし、同名のファイルが存在していた場合はFileAlreadyExistsException例外がスローされます。

それでは今日はこの辺にしておきましょう!

人気ブログランキングへ

0 件のコメント:

コメントを投稿