sobreescribir - cómo crear nuevo java.io.File en la memoria?
modificar archivos txt en java (3)
¿Cómo puedo crear un nuevo File (de java.io) en la memoria, no en el disco duro?
Estoy usando el lenguaje Java. No quiero guardar el archivo en el disco duro.
¿Cómo puedo crear un nuevo archivo (de java.io) en la memoria, no en el disco duro?
Tal vez estás confundiendo File and Stream :
- Un
Filees una representación abstracta de nombres de rutas de archivos y directorios. Con un objetoFile, puede acceder a los metadatos del archivo en un sistema de archivos y realizar algunas operaciones en los archivos de este sistema de archivos, como eliminar o crear el archivo. Pero la claseFileno proporciona métodos para leer y escribir el contenido del archivo. - Para leer y escribir desde un archivo, está utilizando un objeto
Stream, comoFileInputStreamoFileOutputStream. Estas secuencias se pueden crear desde un objetoFiley luego se pueden usar para leer y escribir en el archivo.
Puede crear una secuencia basada en un búfer de bytes que reside en la memoria , utilizando ByteArrayInputStream y ByteArrayOutputStream para leer y escribir en un búfer de bytes de forma similar a lo que lee y escribe desde un archivo. La matriz de byte contiene el contenido del "Archivo". No necesita un objeto File entonces.
Tanto el File... como las ByteArray... heredadas de java.io.OutputStream y java.io.InputStream , respectivamente, de modo que puede usar la superclase común para ocultar si está leyendo desde un archivo o desde un byte. formación.
Para escribir en una secuencia, en la memoria, use:
new ByteArrayOutputStream();
Puede usar un java.io.StringWriter.