Un archivo temporal o un archivo temporal es un archivo que se crea para contener información durante algún tiempo mientras se crea o modifica un archivo. Después de la ejecución exitosa del programa o después de que se cierra el programa, se elimina el archivo temporal. Otras ventajas de tener un archivo temporal son que ayuda a almacenar y mover datos, administrar configuraciones, ayudar a recuperar datos perdidos y administrar múltiples usuarios. Los datos temporales se pueden denominar cookies del navegador de Internet, cachés que se eliminan después de que cerramos el navegador o finalizamos una sesión, y al eliminarlos se libera espacio valioso en nuestro disco duro y la velocidad de la computadora.
La única razón por la que necesitamos crear un archivo temporal en Java es que podemos necesitarlo en varias situaciones, como al crear pruebas de unidad, donde no queremos almacenar el resultado de las operaciones intermedias de Java. Pero si se completan las pruebas, es posible que las eliminemos, ya que pueden ocupar espacio en la computadora innecesariamente.
Hay dos métodos que se pueden utilizar para crear archivos temporales de la siguiente manera:
- Creación de un archivo temporal en la ubicación predeterminada
- Creación de un archivo temporal en la ubicación especificada
Método 1: el archivo temporal se crea en la ubicación predeterminada de la carpeta TEMP.
Sintaxis:
File.createTempFile(String prefix, String suffix) throws IOException
Método 2: el archivo temporal se crea en el directorio especificado.
Sintaxis :
File.createTempFile(String prefix, String suffix, File directory) throws IOException
Implementación: Ambos métodos en un programa Java luego de analizar la salida
Ejemplo 1:
Java
import java.io.File; import java.io.IOException; public class GeeksforGeeks { public static void main(String[] args) { try { // To create a temp file on Default location: File tempFile = File.createTempFile("Hello Geek", ".tmp"); System.out.println( "Temporary file is located on Default location" + tempFile.getAbsolutePath()); // To create a temp file on specified directory tempFile = File.createTempFile( "Hello Geek", ".tmp", new File("/Users/ashray")); System.out.println( "Temporary file is located on Specified location: " + tempFile.getAbsolutePath()); } catch (IOException e) { e.printStackTrace(); } } }
Salida de la consola:
Explicación de salida:
Como ya estamos acostumbrados al procedimiento de creación de un archivo temporal, ahora lo usaremos para escribir datos en el archivo temporal. La forma más eficiente de escribir caracteres en un archivo temporal será mediante el uso de Java BufferedWriter Class . Se utiliza para proporcionar almacenamiento en búfer para instancias de escritura y acelera el rendimiento.
Implementación: escribir datos en un archivo temporal
Ejemplo 2:
Java
import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; public class GeeksforGeeks { public static void main(String[] args) { File tempFile = null; BufferedWriter writer = null; try { // Creating a temporary file tempFile = File.createTempFile("MyTempFile", ".tmp"); writer = new BufferedWriter( new FileWriter(tempFile)); writer.write( "Hello Geek!! How was your day like ?, This is a temp file."); } catch (IOException e) { e.printStackTrace(); } finally { try { if (writer != null) writer.close(); } catch (Exception ex) { } } System.out.println( "Hello Geek! Data has been stored in temporary file."); System.out.println("Temp file location: " + tempFile.getAbsolutePath()); } }
Producción:
La salida de la consola es la siguiente
La salida del ‘archivo temporal’ es la siguiente: