Table of Contents
- Using File.createTempFile()
- Using Files.createTempFile()
- Using Guava's Files.createTempDir()
- Using Apache Commons IO
- Custom Implementation
1. Using File.createTempFile()
import java.io.File;
import java.io.IOException;
try {
File tempFile = File.createTempFile("prefix-", "-suffix");
System.out.println("Temp file created: " + tempFile.getAbsolutePath());
tempFile.deleteOnExit();
} catch (IOException e) {
e.printStackTrace();
}
2. Using Files.createTempFile()
import java.nio.file.Files;
import java.nio.file.Path;
import java.io.IOException;
try {
Path tempFile = Files.createTempFile("prefix-", "-suffix");
System.out.println("Temp file created: " + tempFile.toString());
Files.deleteIfExists(tempFile);
} catch (IOException e) {
e.printStackTrace();
}
3. Using Guava's Files.createTempDir()
import com.google.common.io.Files;
import java.io.File;
File tempDir = Files.createTempDir();
System.out.println("Temp directory created: " + tempDir.getAbsolutePath());
tempDir.deleteOnExit();
4. Using Apache Commons IO
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
try {
File tempDir = FileUtils.getTempDirectory();
File tempFile = File.createTempFile("prefix-", "-suffix", tempDir);
System.out.println("Temp file created: " + tempFile.getAbsolutePath());
FileUtils.forceDelete(tempFile);
} catch (IOException e) {
e.printStackTrace();
}
5. Custom Implementation
import java.io.File;
import java.io.IOException;
public class TempFileCreator {
public static File createTempFile(String prefix, String suffix) throws IOException {
String tempDir = System.getProperty("java.io.tmpdir");
String fileName = prefix + System.nanoTime() + suffix;
File tempFile = new File(tempDir, fileName);
if (!tempFile.createNewFile()) {
throw new IOException("Failed to create temp file");
}
tempFile.deleteOnExit();
return tempFile;
}
}
// Usage
File tempFile = TempFileCreator.createTempFile("myapp-", ".tmp");
System.out.println("Custom temp file created: " + tempFile.getAbsolutePath());
Provide Feedback For This Article
We take your feedback seriously and use it to improve our content. Thank you for helping us serve you better!
😊 Thanks for your time, your feedback has been registered!
Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!