java基础

Java IO流(四)字符流

2017-11-22  本文已影响4人  Marlon666

FileWriter、FileReader 、StringWriter、StringReader、BufferedWriter、BufferedReader

本质都是对字符流的快速操作,仅仅是读入的方式不太一样,抽出来接口和使用的方法也有所不同。其次:BufferedWriter处理效率更高。

FileWriter 和 FileReader 用法

FileWriter 继承结构
'FileWriter extends OutputStreamWriter extends Writer'
'FileReader extends InputStreamReader extends Reader'
功能对File中字符流进行修改、写入和读取操作。
'''

FileWriter write = null;
    try {
        write = new FileWriter(fileName);
        write.write("hell,io\n");
        write.write("welcome to study\n");
        write.write("加油,谢谢!");
        write.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

'''
'''

try {
           FileReader read = new FileReader(fileName);
           int len = 0;
          len = read.read();
          while (len != -1) {
              System.out.println("len:" + len);
         }
     } catch (IOException e) {
        e.printStackTrace();
      }

'''
简单的使用方法:
'''

  try {
        File file = new File("Hello1.txt");
        // 创建文件
        file.createNewFile();
        // creates a FileWriter Object
        FileWriter writer = new FileWriter(file);
        // 向文件写入内容
        writer.write("This\n is\n an\n example\n");
        writer.flush();
        writer.close();

        // 创建 FileReader 对象
        FileReader fr = new FileReader(file);
        char[] a = new char[50];
        fr.read(a); // 读取数组中的内容
        for (char c : a)
            System.out.print(c); // 一个一个打印字符
        fr.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

'''

'''

 try {
        StringWriter stringWriter = new StringWriter();
        stringWriter.write("我是 一个");
        stringWriter.append("Java 大神级别的人物");
        stringWriter.close();

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

'''

StringWriter 、StringReader用法

'''

    String text = "这是一个 StringReader 类";
    StringReader stringReader = new StringReader(text);
    try {
        int len = stringReader.read();
        while (len != -1) {
            System.out.println("line:" + len);
        }
        stringReader.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

'''
'''

try {
        StringWriter stringWriter = new StringWriter();
        stringWriter.write("我是 一个");
        stringWriter.append("Java 大神级别的人物");
        stringWriter.close();

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

'''

BufferedWriter和BufferedReader 用法

'''

  try {
        BufferedWriter bWrite = new BufferedWriter(new FileWriter(fileName));
        bWrite.write("hell,io");
        bWrite.newLine();
        bWrite.write("welcome to study");
        bWrite.newLine();
        bWrite.write("加油,谢谢!");
        bWrite.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

'''

'''

 try {
        BufferedReader read = new BufferedReader(new FileReader(fileName));
        String line = read.readLine();
        while (line != null) {
            System.out.println("line:" + line);
            line = read.readLine();
        }
        read.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

'''

上一篇 下一篇

猜你喜欢

热点阅读