对于IO流操作无外乎三步:
1.开启流
2.操作流
3.关闭流
例:
1.输入输出字节流
//1.开启流
InputStream in=new FileInputStream("demo.txt");
OutputStream out=new FileOutputStream("demo1.txt");
//2.操作流
byte[] buffered=new byte[10];
int len=0;
while((len=in.read(buffered))!=-1){
for(int i=0;i<len;i++){
out.write(buffered[i]);
}
// out.write(buffer, 0, len);//输出写法2
}
//3.关闭流
out.close();
in.close();
2.输入输出字符流
//1.开启流
Reader read=new FileReader("demo.txt");
Writer write=new FileWriter("demo2.txt");
//2.操作流
char[] buff=new char[10];
int len=0;
while((len=read.read(buff))!=-1){
for(int i=0;i<len;i++){
write.write(buff[i]);
}
}
//3.关闭流
write.close();
read.close();
3.缓冲流
//1.开启流
BufferedReader read=new BufferedReader(new FileReader("demo.txt"));
BufferedWriter write=new BufferedWriter(new FileWriter("demo3.txt"));
//2.操作流
String str=null;
int i=0;
while((str=read.readLine())!=null){
if(i!=0){
write.write("\n");
}
write.write(str);
i++;
}
//3.关闭流
read.close();
write.close();
4.转换流(字节-->字符)
//1.开启流
BufferedReader in=new BufferedReader(new InputStreamReader(
new FileInputStream("demo.txt") ));
BufferedWriter out=new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("demo4.txt")));
//2.操作流
int i=0;
String str=null;
while((str=in.readLine())!=null){
if(i!=0){
out.write("\n");
}
out.write(str);
}
//3.关闭流
in.close();
out.close();