美文网首页
Java 使用文件字符流读取和写入文件数据

Java 使用文件字符流读取和写入文件数据

作者: 黑咔 | 来源:发表于2019-12-31 22:26 被阅读0次
FileReader是字符流,即按照字符来操作io

FileReader相关方法

  1. new FileReader(filePath)
  2. read():每次读取单个字符,返回该字符,如果到文件末尾返回 -1
  3. read(char[]):批量读取多个字符到数组,返回读取到的字符数,如果到文件末尾返回 -1

相关API:

  1. new String(char[]) : 将char[]转换成String
  2. new String(char,off,len) :将char[]的指定部分转换成String

代码示例

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

public class FileReader_ {

    public static void main(String[] args) {

        // 创建FileReader对象
        FileReader fileReader = null;

        int readLen = 0;
        char[] buf = new char[1024];
        try {
            fileReader = new FileReader("src\\test.txt");
            // 循环读取 使用read(buf),返回的是实际读取到的字符数
            // 如果返回-1,说明读到文件结束
            while ((readLen = fileReader.read(buf)) != -1) {
                System.out.println(new String(buf, 0, readLen));
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileReader != null) {
                try {
                    fileReader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

使用FileWriter写入数据

 public static void writeDate(String data) {
        // 创建FileWrite对象
        FileWriter fileWriter = null;
        try {
            fileWriter = new FileWriter("src\\data.txt");
            fileWriter.write(data);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            // 对象FileWriter,一定要关闭流,或者flush才能真正的把数据写入到文件
            try {
                fileWriter.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

相关文章

网友评论

      本文标题:Java 使用文件字符流读取和写入文件数据

      本文链接:https://www.haomeiwen.com/subject/mwmipctx.html