Java文件的读写方法

  • Post category:Java

下面我将详细讲解Java文件的读写方法的完整攻略。

Java文件读写方法的攻略

Java文件读写是Java中常见的操作之一。Java为我们提供了很多基于IO流的文件读写方法。在Java中,文件的读写主要分为以下几种方式:

  • 通过字节流进行文件读写
  • 通过字符流进行文件读写
  • 通过RandomAccessFile进行文件读写

下面我将分别介绍这些方式的具体操作。

通过字节流进行文件读写

通过字节流进行文件读写的操作,可以通过Java的InputStream和OutputStream进行实现。具体操作步骤如下:

1. 读取文件

FileInputStream fileInputStream = null;
try {
    fileInputStream = new FileInputStream(filePath);
    byte[] buffer = new byte[1024];
    int len;
    while((len = fileInputStream.read(buffer)) != -1){
        System.out.write(buffer, 0, len);
    }
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (fileInputStream != null) {
        try {
            fileInputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2. 写入文件

FileOutputStream fileOutputStream = null;
try {
    fileOutputStream = new FileOutputStream(filePath);
    String content = "hello, world!";
    byte[] bytes = content.getBytes();
    fileOutputStream.write(bytes);
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (fileOutputStream != null) {
        try {
            fileOutputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

通过字符流进行文件读写

通过字符流进行文件读写的操作,可以通过Java的Reader和Writer进行实现。具体操作步骤如下:

1. 读取文件

FileReader fileReader = null;
try {
    fileReader = new FileReader(filePath);
    char[] buffer = new char[1024];
    int len;
    while((len = fileReader.read(buffer)) != -1){
        System.out.print(new String(buffer, 0, len));
    }
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (fileReader != null) {
        try {
            fileReader.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2. 写入文件

FileWriter fileWriter = null;
try {
    fileWriter = new FileWriter(filePath);
    String content = "hello, world!";
    fileWriter.write(content);
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (fileWriter != null) {
        try {
            fileWriter.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

通过RandomAccessFile进行文件读写

通过RandomAccessFile进行文件读写的操作,可以实现读写文件的随机访问。具体操作步骤如下:

1. 读取文件

RandomAccessFile randomAccessFile = null;
try {
    randomAccessFile = new RandomAccessFile(filePath, "r");
    byte[] buffer = new byte[1024];
    int len;
    while((len = randomAccessFile.read(buffer)) != -1){
        System.out.write(buffer, 0, len);
    }
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (randomAccessFile != null) {
        try {
            randomAccessFile.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2. 写入文件

RandomAccessFile randomAccessFile = null;
try {
    randomAccessFile = new RandomAccessFile(filePath, "rw");
    String content = "hello, world!";
    byte[] bytes = content.getBytes();
    randomAccessFile.write(bytes);
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (randomAccessFile != null) {
        try {
            randomAccessFile.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上就是Java文件读写的详细攻略及代码示例。