Los flujos de bytes de Java se utilizan para realizar entradas y salidas de bytes de 8 bits. Para escribir Bytes utilizando BytesStream en un archivo, Java proporciona un flujo especializado para escribir archivos en el sistema de archivos conocido como FileOutputStream. Esta secuencia proporciona la funcionalidad básica de OutputStream aplicada para escribir el contenido de un archivo.
La clase FileOutputStream es un flujo de salida para escribir datos en un archivo. Es una clase que pertenece a flujos de bytes. La clase FileOutputStream amplía la clase abstracta OutputStream. Por lo tanto, hereda toda la funcionalidad estándar de OutputStream para escribir en un archivo. FileOutputStream proporciona solo una interfaz de bajo nivel para escribir datos. Puede crear un FileOutputStream a partir de un nombre de ruta de string o un objeto de archivo. Los constructores de FileOutputStream no lanzan una excepción FileNotFoundException. Si el archivo especificado no existe, FileOutputStream crea el archivo. Los constructores de FileOutputStream pueden lanzar una IOException si ocurre algún otro error de E/S. Si el archivo especificado existe, FileOutputStream lo abre para escritura. Cuando realmente llama a un método write(), los nuevos datos sobrescriben el contenido actual del archivo. Para agregar datos a un archivo existente, use un constructor diferente que acepte un indicador de adición.
Ahora, discutiendo estos métodos incorporados para comprender el funcionamiento interno al tratar con conceptos de archivos en Java.
- Método getBytes()
- método de escritura()
- cerrar() Método
Considerándolos individualmente, discutiendo métodos para una mayor comprensión.
1. Método getBytes()
Para escribir en un archivo, surge la necesidad de convertir el texto (contenido) en una array de bytes antes de escribirlo en el archivo. Este método cumple la función de convertir los caracteres de este objeto String en una array de valores de bytes. Los caracteres de la string se convierten en bytes utilizando el esquema de codificación de caracteres predeterminado del sistema.
Sintaxis:
public byte[] getBytes() ;
Parámetro: NA
Devuelve: una array de bytes que contiene los caracteres de esta string
2. Método escribir()
El método write(byte[] b) de la clase FileOutputStream se usa para escribir bytes b.length desde la array de bytes especificada a este flujo de salida de archivo
Sintaxis:
public void write(byte[] b) throws IOException ;
Parámetros: Los datos
Devoluciones: este método no devuelve ningún valor.
3.cerrar() Método
El método close() de la clase FileOutputStream se usa para cerrar el flujo de salida del archivo y libera todos los recursos del sistema asociados con este flujo.
Sintaxis:
public void close() ;
Parámetro: NA
Devoluciones: este método no devuelve ningún valor.
Implementación:
- Crear un objeto del archivo y pasar la ruta del directorio local del archivo como entrada.
- Almacenamiento de texto aleatorio en el tipo de datos String.
- Convertir una string en una array de bytes.
- Escribe datos de bytes en la salida del archivo.
- Cierra el archivo usando el método close() .
Ejemplo
Java
// Java program to write Bytes using ByteStream // Importing classes import java.io.FileOutputStream; import java.io.IOException; // Class class GFG { // Main driver method public static void main(String args[]) { // Try block to check if any exception/s occur try { // Step 1: Creating object of the file and // passing local directory path of file as input FileOutputStream fout = new FileOutputStream("demo.txt"); // Custom text to be written down in above file // Step 2: Storing text into String datatype String s = "Welcome to GFG! This is an example of Java program to write Bytes using ByteStream."; // Step 3: Converting string into byte array byte b[] = s.getBytes(); // Step 4: Write byte data to file output fout.write(b); // Step 5: Close the file using close() method fout.close(); } // Catch block to handle exceptions catch (IOException e) { // Display and print the exception System.out.println(e); } } }
Producción:
Se crea un archivo en la ruta mencionada con el nombre de ‘demo’ con extensión .txt
Después de hacer clic en este archivo, los resultados deseados son los siguientes, que es el mismo que el texto almacenado en el tipo de datos de string en el programa anterior
Publicación traducida automáticamente
Artículo escrito por poojavichare1810 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA