IO流之字符输入流,字符输出流
Posted leonhq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IO流之字符输入流,字符输出流相关的知识,希望对你有一定的参考价值。
在我们日常开发中,我们经常会遇到要上传文件的操作,实现这个都是通过IO流去实现的,这次写的是普通字符输入流和普通输出流,由于效率有点低所以我们在日常开发中不会用到.
所以这次的代码可能只是帮助到接触到java IO流的初学者,在后面的文章我们会更新高效流文件流
注意:字符流只能用来传输文本文件,所以我们要实现所有类型复制还是要用字节流,字符流的底层也是用到字节流
话不多说直接上代码
字符输入流
public static void main(String[] args) throws IOException { // 使用文件名称创建流对象 FileReader fr = new FileReader("aaa.txt"); // 定义变量,保存有效字符个数 int b = -1; // 定义字符数组,作为装字符数据的容器 char[] cbuf = new char[2]; // 循环读取 while ((b = fr.read(cbuf))!=‐1) { System.out.println(new String(cbuf)); } // 关闭资源 fr.close(); }
字符输出流
//写出字符数组 // 使用文件名称创建流对象 FileWriter fw = new FileWriter("fw.txt"); // 字符串转换为字节数组 char[] chars = "学习java".toCharArray(); fw.write(chars); // 学习java // 写出从索引2开始,2个字节 fw.write(b,2,2); //刷新缓冲区 fow.flush(); // 关闭资源 fos.close(); //写出字符串 // 使用文件名称创建流对象 FileWriter fw = new FileWriter("fw.txt"); // 字符串 String msg = "学习java"; // 写出字符数组 fw.write(msg); // 写出从索引2开始,2个字节 fw.write(msg,2,2); // // 关闭资源 fos.close(); //续写和换行 // 使用文件名称创建流对象,可以续写数据 FileWriter fw = new FileWriter("fw.txt",true); // 写出字符串 fw.write("我爱"); // 写出换行 fw.write(" "); // 关闭资源 fw.close();
以上是关于IO流之字符输入流,字符输出流的主要内容,如果未能解决你的问题,请参考以下文章
java缓冲字符字节输入输出流:java.io.BufferedReaderjava.io.BufferedWriterjava.io.BufferedInputStreamjava.io.(代码片段