首页  >  文章  >  Java  >  Java I/O流如何读写文件?

Java I/O流如何读写文件?

WBOY
WBOY原创
2024-04-14 09:39:01563浏览

Java I/O流可方便地处理文件:读取文件:使用FileInputStream对象创建输入流。使用read()方法读取文件内容至字节数组。遍历字节数组打印内容。写入文件:使用FileOutputStream对象创建输出流。使用write()方法将字符串写入文件。实战案例:使用FileInputStream和Scanner从文件中读取特定行。逐行读取文件并比较行号。打印匹配行号的行内容。

Java I/O流如何读写文件?

Java I/O 流:读写文件

简介

Java I/O 流提供了一个方便的方式来处理文件。我们可以使用流读取和写入文件。

读写文件

1. 读取文件

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

public class ReadFile {

    public static void main(String[] args) {
        try {
            // 创建一个 FileInputStream 对象
            FileInputStream fis = new FileInputStream(new File("file.txt"));

            // 创建一个字节数组
            byte[] data = new byte[1024];

            // 读取文件内容到字节数组
            int readBytes = fis.read(data);

            // 循环遍历字节数组并打印文件内容
            for (int i = 0; i < readBytes; i++) {
                System.out.print((char) data[i]);
            }

            // 关闭文件输入流
            fis.close();

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2. 写入文件

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteFile {

    public static void main(String[] args) {
        try {
            // 创建一个 FileOutputStream 对象
            FileOutputStream fos = new FileOutputStream(new File("file.txt"));

            // 将字符串写入文件
            String data = "This is a sample text.";
            fos.write(data.getBytes());

            // 关闭文件输出流
            fos.close();

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

实战案例

从文件中读取特定行

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Scanner;

public class ReadSpecificLine {

    public static void main(String[] args) {
        try {
            // 创建一个 FileInputStream 对象
            FileInputStream fis = new FileInputStream(new File("file.txt"));

            // 创建一个 Scanner 对象
            Scanner scanner = new Scanner(fis);

            // 输入要读取的行号
            int lineNumber = 5;

            // 逐行读取文件
            int currentLine = 1;
            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();

                // 如果当前行号等于要读取的行号,则打印该行
                if (currentLine == lineNumber) {
                    System.out.println(line);
                }

                currentLine++;
            }

            // 关闭文件输入流
            fis.close();

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上是Java I/O流如何读写文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn