java文件的字符输入流与输出流
之前在字节流的时候给大家介绍过输入和输出相对与程序而言简单的理解就是:将硬盘已有的数据读取到内存中的是输入流,将内存中的数据存储到硬盘中的就是输出流。本次的字符流的原理也是一致的。
字符流:每次操作对对象单位是字符的输入或者输出,最常用的FileReader和FileWriter两个字节流的子类,其中FileReader是输入流,FileWriter是输出流
1、 字符的输入流 FileReader
下面展示一些 内联代码片
。
public static void main(String[] args) {
FileReader fileReader = null;
try {
fileReader = new FileReader("E:"+File.separator+"ccw.txt");
//创建输入字符流数组
char[] charArry =new char[1024*1];
int len = 0;
while ((len = fileReader.read(charArry))!= -1) {
String string = new String(charArry,0,len);
System.out.println(string);
}
} catch (Exception e) {
// TODO: handle exception
}finally {
if (fileReader != null) {
try {
fileReader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
2、 字符的输出流 FileWriter
下面展示一些 内联代码片
。
public static void main(String[] args) {
FileWriter fileWriter = null;
try {
//true是指在输出的时候不用覆盖文件里已有的数据
//false表示覆盖文件里已有的数据
fileWriter = new FileWriter("E:"+File.separator+"ccw.txt",true);
String str = "IO流分为字节流和字符流,字节流又分为字节输入流字节输出流";
fileWriter.write(str);
fileWriter.flush();
} catch (Exception e) {
// TODO: handle exception
}finally {
if (fileWriter != null) {
try {
fileWriter.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}