溫馨提示×

java怎么使用io流讀寫文件

小億
107
2024-01-24 10:41:24
欄目: 編程語言

Java中使用IO流讀寫文件主要涉及到以下幾個類和接口:

  1. FileInputStream和FileOutputStream:用于讀寫字節流的文件,以字節為單位進行讀寫。
  2. FileReader和FileWriter:用于讀寫字符流的文件,以字符為單位進行讀寫。
  3. BufferedReader和BufferedWriter:用于提供緩沖機制,能夠提高讀寫效率。
  4. InputStreamReader和OutputStreamWriter:用于將字節流轉換為字符流,以便進行字符流的讀寫操作。

下面是一些常用的讀寫文件的示例代碼:

  1. 使用FileInputStream和FileOutputStream讀寫字節流的文件:
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            FileInputStream fis = new FileInputStream("input.txt");
            FileOutputStream fos = new FileOutputStream("output.txt");

            int data;
            while ((data = fis.read()) != -1) {
                fos.write(data);
            }

            fis.close();
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. 使用FileReader和FileWriter讀寫字符流的文件:
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            FileReader fr = new FileReader("input.txt");
            FileWriter fw = new FileWriter("output.txt");

            int data;
            while ((data = fr.read()) != -1) {
                fw.write(data);
            }

            fr.close();
            fw.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. 使用BufferedReader和BufferedWriter讀寫文件:
import java.io.*;

public class FileIOExample {
    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new FileReader("input.txt"));
            BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));

            String line;
            while ((line = br.readLine()) != null) {
                bw.write(line);
                bw.newLine(); // 寫入換行符
            }

            br.close();
            bw.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

這些示例代碼只是基本的讀寫文件操作,具體使用時可能還需要處理異常、關閉流等。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女