Groovy-file-io
Groovy-ファイルI/O
Groovyは、I/Oを操作する際に多くのヘルパーメソッドを提供します。 Groovyは、ファイルに次の機能を提供するための簡単なクラスを提供します。
- ファイルを読む
- ファイルへの書き込み
- ファイルツリーの走査
- ファイルへのデータオブジェクトの読み取りと書き込み
これに加えて、ファイルI/O操作には、以下にリストされている通常のJavaクラスをいつでも使用できます。
- java.io.File
- java.io.InputStream
- java.io.OutputStream
- java.io.Reader
- java.io.Writer
ファイルを読む
次の例では、Groovyのテキストファイルのすべての行を出力します。 メソッド eachLine は、テキストファイルの各行が確実に読み取られるようにするために、GroovyのFileクラスに組み込まれています。
Fileクラスは、ファイル名をパラメーターとして受け取る新しいオブジェクトをインスタンス化するために使用されます。 次に、eachLineの関数を取得し、それをlineという変数に入れて、それに応じて出力します。
ファイルに次の行が含まれている場合、それらが印刷されます。
ファイルの内容を文字列全体として読み取る
ファイルの内容全体を文字列として取得する場合は、ファイルクラスのtextプロパティを使用できます。 次の例は、これを行う方法を示しています。
ファイルに次の行が含まれている場合、それらが印刷されます。
ファイルへの書き込み
ファイルに書き込みたい場合は、writerクラスを使用してテキストをファイルに出力する必要があります。 次の例は、これを行う方法を示しています。
ファイルExample.txtを開くと、「Hello World」という単語がファイルに出力されます。
ファイルのサイズを取得する
ファイルのサイズを取得する場合は、ファイルクラスのlengthプロパティを使用してファイルのサイズを取得できます。 次の例は、これを行う方法を示しています。
上記のコードは、ファイルのサイズをバイト単位で示します。
ファイルがディレクトリかどうかのテスト
パスがファイルかディレクトリかを確認したい場合は、Fileクラスの isFile および isDirectory オプションを使用できます。 次の例は、これを行う方法を示しています。
上記のコードは、次の出力を示します-
ディレクトリを作成する
新しいディレクトリを作成する場合は、Fileクラスの mkdir 関数を使用できます。 次の例は、これを行う方法を示しています。
ディレクトリE:\ Directoryが存在しない場合は作成されます。
ファイルを削除する
ファイルを削除する場合は、Fileクラスの削除機能を使用できます。 次の例は、これを行う方法を示しています。
ファイルが存在する場合は削除されます。
ファイルをコピーする
Groovyは、あるファイルから別のファイルにコンテンツをコピーする機能も提供します。 次の例は、これを行う方法を示しています。
ファイルExample1.txtが作成され、ファイルExample.txtのすべての内容がこのファイルにコピーされます。
ディレクトリの内容を取得する
Groovyは、ドライブとドライブ内のファイルをリストする機能も提供します。
次の例は、Fileクラスの listRoots 関数を使用して、マシン上のドライブを表示する方法を示しています。
マシンで使用可能なドライブに応じて、出力が異なる場合があります。 標準的なマシンでは、出力は次のようになります-
次の例は、Fileクラスの eachFile 関数を使用して、特定のディレクトリ内のファイルを一覧表示する方法を示しています。
出力には、ディレクトリE:\ Temp内のすべてのファイルが表示されます
ディレクトリとそのサブディレクトリ内のすべてのファイルを再帰的に表示する場合は、Fileクラスの eachFileRecurse 関数を使用します。 次の例は、これを行う方法を示しています。
出力には、ディレクトリE:\ Tempおよびそのサブディレクトリ(存在する場合)にあるすべてのファイルが表示されます。