1.FileReader类(文件字符输出流)使用
package com.yundait.Demo04;
import java.io.FileReader;
/**
* 使用FileReader读取文件
* @author Mr zhang
*/
public class FileReaderDemo01 {
public static void main(String[] args) throws Exception {
//1创建FileReader 文件字符输入流对象
FileReader fr = new FileReader("C:\\Users\\Public\\Documents\\HelloWorld.txt");
//2读取文件(方法1 一个字符一个字符读取)
// int data;
// while ((data = fr.read())!=-1){
// System.out.print((char) data);
// }
//2读取文件(方法2,读取后放入一个数组中)
char[] buf = new char[1024];
int count;
while ((count = fr.read(buf))!=-1){
System.out.print(new String(buf,0,count));
System.out.println(count);
}
//关闭文件字符输出流对象
fr.close();
}
}
2.FileWriter类(文件字符输入流)使用
package com.yundait.Demo04;
import java.io.FileWriter;
public class FileWriterDemo01 {
public static void main(String[] args) throws Exception{
//创建FileWriter 文件字符输入流
FileWriter fw = new FileWriter("C:\\Users\\Public\\Documents\\HelloWorld2.txt");
//2写入文件
for (int i=0;i<10;i++){
fw.write("java 是世界上最好的语言\n\r");
fw.flush();
}
//3关闭
fw.close();
}
}
3.使用字节流复制文件
package com.yundait.Demo04;
import java.io.FileReader;
import java.io.FileWriter;
/**
* 使用FileReader和FileWriter实现文本文件复制,
* 注意字符流不能复制图片或二进制文件,因为字符流读取和写入过程中是有编码的。
* 字节流可以复制任意文件;
* @author Mr zhang
*/
public class FileReaderWriterDemo01 {
public static void main(String[] args) throws Exception{
//创建FileReader和FileWriter类
FileReader fr = new FileReader("C:\\Users\\Public\\Documents\\HelloWorld2.txt");
FileWriter fw = new FileWriter("C:\\Users\\Public\\Documents\\HelloWorld3.txt");
//读写文件(读一个字符写入一个字符)
int data;
while ((data = fr.read())!=-1){
fw.write(data);
fw.flush();
}
//3关闭
fw.close();
fr.close();
System.out.println("完成文件复制");
}
}