## 字节流复制 (任何文件)
### 字节流一次复制一个字节
```java
FileInputStream fis=new FileInputStream("day09/a.txt");
FileOutputStream fos=new FileOutputStream("day09/b.txt");
int b;
while((b=fis.read())!=-1){
fos.write(b);
}
fos.close();
fis.close();
字节流一次复制多个字节
FileInputStream fis=new FileInputStream("day09/a.txt");
FileOutputStream fos=new FileOutputStream("day09/b.txt");
byte[] bs=new byte[1024];
int len;
while((len=fis.read(bs))!=-1){
fos.write(bs,0,len);
}
fos.close();
fis.close();
字节缓冲流复制 (任何文件)
字节缓冲流一次复制一个字节
InputStream fis=new BufferedInputStream(new FileInputStream("day09/a.txt"));
OutputStream fos=new BufferedOutputStream(new FileOutputStream("day09/b.txt"));
int b;
while((b=fis.read())!=-1){
fos.write(b);
}
fos.close();
fis.close();
字节缓冲流一次复制多个字节
InputStream fis=new BufferedInputStream(new FileInputStream("day09/a.txt"));
OutputStream fos=new BufferedOutputStream(new FileOutputStream("day09/b.txt"));
byte[] bs=new byte[1024];
int len;
while((len=fis.read(bs))!=-1){
fos.write(bs,0,len);
}
fos.close();
fis.close();
字符流复制(文本文件)
字符流一次复制一个字符
Reader r=new FileReader("day09/a.txt");
Writer w=new FileWriter("day09/b.txt");
int ch;
while((ch=r.read())!=-1){
w.write(ch);
}
w.close();
r.close();
字符流一次复制多个字符
Reader r=new FileReader("day09/a.txt");
Writer w=new FileWriter("day09/b.txt");
char[] chs=new char[1024];
int len;
while((len=r.read(chs))!=-1){
w.write(chs,0,len);
}
w.close();
r.close();
字符缓冲流复制(文本文件)
字符缓冲流一次复制一个字符
Reader r=new BufferedReader(new FileReader("day09/a.txt"));
Writer w=new BufferedWriter(new FileWriter("day09/b.txt"));
int ch;
while((ch=r.read())!=-1){
w.write(ch);
}
w.close();
r.close();
字符缓冲流一次复制多个字符
Reader r=new BufferedReader(new FileReader("day09/a.txt"))
Writer w=new BuferedWriter(new FileWriter("day09/b.txt"))
char[] chs=new char[1024];
int len;
while((len=r.read(chs))!=-1){
w.write(chs,0,len);
}
w.close();
r.close();
字符缓冲流一次复制一行
BufferedReader br=new BufferedReader(new FileReader("day09/a.txt"));
BufferedWriter bw=new BufferedWriter(new FileWriter("day09/b.txt"));
String line=null;
while ((line=br.readLine())!=null){
bw.write(line);
bw.newLine();
}
bw.close();
br.close();
字符转换流复制(文本文件)
字符转换流一次复制一个字符
Reader r=new InputStreamReader(new FileInputStream("day09/a.txt"),"UTF-8");
Writer w=new OutputStreamWriter(new FileOutputStream("day09/b.txt"),"GBK");
int ch;
while((ch=r.read())!=-1){
w.write(ch);
}
w.close();
r.close();
字符转换流一次复制多个字符
Reader r=new InputStreamReader(new FileInputStream("day09/a.txt"),"UTF-8");
Writer w=new OutputStreamWriter(new FileOutputStream("day09/b.txt"),"GBK");
char[] chs=new char[1024];
int len;
while((len=r.read(chs))!=-1){
w.write(chs,0,len);
}
w.close();
r.close();