Java中的IO流:字节流、字符流、文件流


Java中的IO流:字节流、字符流、文件流


一、前言

在Java中,IO(Input/Output)流是用于读写数据的重要工具。Java中的IO流可以分为字节流和字符流,还有文件流等。本文将详细介绍Java中的IO流:字节流、字符流、文件流,包括函数、函数细节用法参数讲解,同时附带对应的代码案例。


二、字节流

字节流是IO流的基础,它是以字节为单位进行读写操作的。Java中的字节流有两个基本的抽象类:InputStream和OutputStream。InputStream用于从输入流中读取字节,OutputStream用于向输出流中写入字节。

Java中的字节流可以分为输入字节流和输出字节流,分别对应InputStream和OutputStream。常用的字节流有FileInputStream、FileOutputStream、ByteArrayInputStream、ByteArrayOutputStream等。

下面是一个读取文件内容并输出的例子:

import java.io.*;

class Main {
  public static void main(String[] args) {
    try {
      FileInputStream file = new FileInputStream("example.txt");
      int content;
      while ((content = file.read()) != -1) {
        System.out.print((char) content);
      }
      file.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}


三、字符流

字符流是以字符为单位进行读写操作的。Java中的字符流有两个基本的抽象类:Reader和Writer。Reader用于从输入流中读取字符,Writer用于向输出流中写入字符。

Java中的字符流可以分为输入字符流和输出字符流,分别对应Reader和Writer。常用的字符流有FileReader、FileWriter、CharArrayReader、CharArrayWriter等。

下面是一个读取文件内容并输出的例子:

import java.io.*;

class Main {
  public static void main(String[] args) {
    try {
      FileReader file = new FileReader("example.txt");
      int content;
      while ((content = file.read()) != -1) {
        System.out.print((char) content);
      }
      file.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}


四、文件流

Java中的文件流是一种基于文件的数据输入输出流,它是对字节流和字符流的进一步封装。Java中的文件流有两个基本的类:FileInputStream和FileOutputStream。FileInputStream用于从文件中读取数据,FileOutputStream用于向文件中写入数据。

下面是一个读取文件内容并输出的例子:

import java.io.*;

class Main {
  public static void main(String[] args) {
    try {
      File file = new File("example.txt");
      FileInputStream fileInputStream = new FileInputStream(file);
      int content;
      while ((content = fileInputStream.read()) != -1) {
        System.out.print((char) content);
      }
      fileInputStream.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}


五、总结

本文详细介绍了Java中的IO流:字节流、字符流、文件流的概念、用法及其代码案例。希望本文能够帮助读者更好地理解Java中的IO流。如果读者对此还有疑问,欢迎在评论区留言交流!

猿教程
请先登录后发表评论
  • 最新评论
  • 总共0条评论