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

Java函数使用:如何实现文件读写操作?

发布时间:2023-11-24 04:17:00

Java提供了丰富的文件读写操作的功能,以下是一些常用的方法和类的介绍和使用示例。

1. File类和路径操作:

Java中的File类可以用来表示文件或目录的路径。它提供了一系列方法来处理文件的创建、删除、重命名等操作。

示例代码:

import java.io.File;

public class FileExample {
    public static void main(String[] args) {
        // 创建文件
        File file = new File("test.txt");
        try {
            if (file.createNewFile()) {
                System.out.println("文件创建成功!");
            } else {
                System.out.println("文件已存在!");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        // 删除文件
        if (file.delete()) {
            System.out.println("文件删除成功!");
        } else {
            System.out.println("文件删除失败!");
        }
        
        // 重命名文件
        File newFile = new File("newName.txt");
        if (file.renameTo(newFile)) {
            System.out.println("文件重命名成功!");
        } else {
            System.out.println("文件重命名失败!");
        }
        
        // 判断文件是否存在
        if (newFile.exists()) {
            System.out.println("文件存在!");
        } else {
            System.out.println("文件不存在!");
        }
        
        // 获取文件路径
        System.out.println("文件路径:" + newFile.getAbsolutePath());
    }
}

2. FileInputStream和FileOutputStream类进行文件读写操作:

Java中的FileInputStream和FileOutputStream类分别用于读取和写入文件中的数据。它们提供了read()和write()方法来进行数据的读取和写入。

示例代码:

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

public class FileIOExample {
    public static void main(String[] args) {
        try {
            // 读取文件
            FileInputStream input = new FileInputStream("test.txt");
            byte[] data = new byte[1024];
            int length = input.read(data);
            System.out.println("读取文件内容:" + new String(data, 0, length));
            input.close();
            
            // 写入文件
            FileOutputStream output = new FileOutputStream("test.txt");
            String content = "Hello, world!";
            output.write(content.getBytes());
            output.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

3. FileReader和FileWriter类进行字符文件读写:

如果文件内容是文本,可以使用FileReader和FileWriter类进行字符流的读取和写入。

示例代码:

import java.io.FileReader;
import java.io.FileWriter;

public class FileCharIOExample {
    public static void main(String[] args) {
        try {
            // 读取文件
            FileReader reader = new FileReader("test.txt");
            char[] data = new char[1024];
            int length = reader.read(data);
            System.out.println("读取文件内容:" + new String(data, 0, length));
            reader.close();
            
            // 写入文件
            FileWriter writer = new FileWriter("test.txt");
            String content = "Hello, world!";
            writer.write(content);
            writer.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

4. BufferedReader和BufferedWriter类进行缓冲区读写:

为了提高读写效率,可以使用BufferedReader和BufferedWriter类对FileReader和FileWriter进行包装,实现缓冲区读写。

示例代码:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;

public class FileBufferIOExample {
    public static void main(String[] args) {
        try {
            // 读取文件
            BufferedReader reader = new BufferedReader(new FileReader("test.txt"));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println("读取文件内容:" + line);
            }
            reader.close();
            
            // 写入文件
            BufferedWriter writer = new BufferedWriter(new FileWriter("test.txt"));
            String content = "Hello, world!";
            writer.write(content);
            writer.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

以上是Java中文件读写操作的简单介绍和使用示例。实际应用中,需要根据具体需求选择适合的方法和类来进行文件操作,同时要注意合理关闭资源,异常处理等。