English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
El flujo es una serie de datos.
Cuando hay intercambio de datos entre diferentes medios, JAVA utiliza flujos para implementar. La fuente de datos puede ser un archivo, también puede ser una base de datos, red, incluso otros programas.
Por ejemplo, leer los datos del archivo al programa, desde el punto de vista del programa, se llama flujo de entrada.
El flujo de bytes (leer y escribir datos en forma de bytes)
InputStream, el flujo de bytes de entrada, también es una clase abstracta, que solo proporciona declaraciones de métodos, sin proporcionar la implementación específica de los métodos.
FileInputStream es una subclase de InputStream, a continuación, se tomará el ejemplo de FileInputStream para realizar la lectura de archivos.
package testIO; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.util.Date; public class testFile { public static void main(String[] args) throws IOException { File f=new File("F:/test/lol.txt"); //Crear un flujo de entrada basado en el archivo. FileInputStream fis=new FileInputStream(f); //Crear un array de bytes, su longitud es la longitud del archivo. byte[] bs=new byte[(int) f.length()]; System.out.println("Leer todo el contenido del archivo en forma de flujo de bytes:");+fis.read(bs)); for (byte b:bs){ System.out.println(b); } fis.close(); } }
OutputStream, el flujo de bytes de salida, también es una clase abstracta, que solo proporciona declaraciones de métodos, sin proporcionar la implementación específica de los métodos.
FileOutputStream es una subclase de OutputStream, a continuación, se tomará el ejemplo de FileOutputStream para realizar la escritura de datos.
package testIO; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class writeIO { public static void main(String[] args) throws IOException { File f=new File("F:/test/lol.txt"); FileOutputStream fos=new FileOutputStream(f); byte data[]={87,88}; fos.write(data); fos.close(); } }
Nota: Si el archivo lol no existe, la operación de escritura creará automáticamente el archivo. Si el directorio test no existe, se lanzará una excepción.
Entonces, ¿cómo puede el programa crear automáticamente el directorio test si no existe?/test/yang/¿El archivo lol.txt existe y ¿test y yang no existen?
package testIO; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class writeIO { public static void main(String[] args) throws IOException { File f=new File("F:/test/yang/csdn/lol.txt"); System.out.println(f.exists()); File dir=f.getParentFile(); //Obtener el directorio del archivo if(!dir.exists()){ dir.mkdirs(); //Si el directorio del archivo no existe, se creará el directorio inexistente } FileOutputStream fos=new FileOutputStream(f); byte data[]={87,88}; fos.write(data); fos.close(); } }
Obtener el directorio del archivo en el programa, si el directorio no existe, se creará el directorio
Resumen
Esto es todo el contenido detallado sobre el flujo de E/S de Java en este artículo, espero que sea útil para todos. Los amigos interesados pueden continuar consultando otros temas relacionados en este sitio, y si hay deficiencias, por favor déjenos un mensaje. Gracias por el apoyo de los amigos a este sitio!
Declaración: El contenido de este artículo se obtiene de la red, es propiedad del autor original, el contenido se contribuye y carga de manera autónoma por los usuarios de Internet, este sitio no posee los derechos de propiedad, no se ha realizado un procesamiento editorial humano y no asume ninguna responsabilidad legal relacionada. Si encuentra contenido sospechoso de copyright, por favor envíe un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, reemplace # con @) para denunciar, y proporcione evidencia relevante. Una vez confirmado, este sitio eliminará inmediatamente el contenido sospechoso de infracción.