web-dev-qa-db-ja.com

Groovyで一時ファイルを作成するにはどうすればよいですか?

Javaには、一時ファイルを作成するためのJava.io.File.createTempFile関数があります。Groovyでは、この関数がFileクラスにないため、そのような機能は存在しないようです。 (参照: http://docs.groovy-lang.org/latest/html/groovy-jdk/Java/io/File.html

とにかくGroovyで一時ファイルまたはファイルパスを作成する正しい方法はありますか、それとも自分で作成する必要がありますか(間違いがなければ正しく作成するのは簡単ではありません)?

前もって感謝します!

24
Moredread
File.createTempFile("temp",".tmp").with {
    // Include the line below if you want the file to be automatically deleted when the 
    // JVM exits
    // deleteOnExit()

    write "Hello world"
    println absolutePath
}

簡易版

作成されたFileにアクセスする方法がわからないと誰かがコメントしたので、上記のコードのより単純な(ただし機能的には同一の)バージョンを次に示します。

File file = File.createTempFile("temp",".tmp")
// Include the line below if you want the file to be automatically deleted when the 
// JVM exits
// file.deleteOnExit()

file.write "Hello world"
println file.absolutePath
42
Dónal

GroovyコードではJava.io.File.createTempFile()を使用できます。

def temp = File.createTempFile('temp', '.txt') 
temp.write('test')  
println temp.absolutePath
6
An̲̳̳drew

GroovyクラスはJavaファイルクラスを拡張するので、Javaで通常行うように実行します。

File temp = File.createTempFile("temp",".scrap");
temp.write("Hello world")
println temp.getAbsolutePath()  
4
Jared