欢迎访问宙启技术站
智能推送

如何使用Java中的IO函数来进行文件与流处理?

发布时间:2023-07-01 08:17:24

Java中的IO函数提供了多种用于文件与流处理的方法和类。下面是一个基本的使用示例,涵盖了文件的读取和写入,以及流的处理:

1. 读取文件:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class FileExample {
  public static void main(String[] args) {
    String fileName = "example.txt";
    try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
      String line;
      while ((line = reader.readLine()) != null) {
        System.out.println(line);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

以上代码使用了BufferedReader类和FileReader类来逐行读取文件。可以替换example.txt为你要读取的真实文件名。

2. 写入文件:

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class FileWriterExample {
  public static void main(String[] args) {
    String fileName = "output.txt";
    try (BufferedWriter writer = new BufferedWriter(new FileWriter(fileName))) {
      writer.write("Hello, World!");
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

以上代码使用了BufferedWriter类和FileWriter类来将字符串写入文件。可以替换output.txt为你要写入的真实文件名。

3. 处理输入输出流:

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class StreamExample {
  public static void main(String[] args) {
    String inputFile = "input.txt";
    String outputFile = "output.txt";
    try (FileInputStream fis = new FileInputStream(inputFile);
         FileOutputStream fos = new FileOutputStream(outputFile)) {
      byte[] buffer = new byte[1024];
      int bytesRead;
      while ((bytesRead = fis.read(buffer)) != -1) {
        fos.write(buffer, 0, bytesRead);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

以上代码使用了FileInputStream类和FileOutputStream类来处理输入输出流。将input.txt中的内容复制到output.txt中。

这些示例展示了最基本的文件与流处理操作。在实际应用中,还可以使用更多的IO函数和类,如Scanner类用于方便的输入处理,以及ObjectInputStreamObjectOutputStream类用于对象的序列化与反序列化。请根据具体的需求进一步探索Java的IO函数。