IO流
IO
字节流 InputStream outputStream
字符流 Reader writer
边读边写
public class IORedo1 {
/*IO
* 字节流
* InputStream outputStream
* 字符流
* Reader writer
*/
//对接 读写
//读出来再写 边读边写
void readerDemo() throws Exception{
//源
File file = new File("f://a.txt");
//输入流指向源
FileReader r = new FileReader(file);
char[] c = new char[10];
r.read(c);
for(char c1:c){
System.out.println(c1);
}
//目标
//
File target = new File("f://b.txt");
FileWriter w = new FileWriter(target);
w.write(c);
//输出流不关闭 就认为没写完
r.close();
w.close();
}
读出来再写
//读出来再写
//用字节流写字符信息
void readerOutputDemo() throws Exception{
//源
File file = new File("f://a.txt");
//输入流指向源
FileReader r = new FileReader(file);
//让读出来的信息是成行的读取
BufferedReader br = new BufferedReader(r);
String info = br.readLine();
System.out.println(info);
File target = new File("f://b.txt");
FileOutputStream out = new FileOutputStream(target);
out.write(info.getBytes());//把字符串变成字节数组
r.close();
out.close();
}
字节流处理图片
//字节流处理图片
void inputDemo() throws Exception{
//源
File file = new File("f://5.jpg");
//字节输入流
FileInputStream input = new FileInputStream(file);
//目标
File target = new File("f://6.jpg");
//字节输出流
FileOutputStream out = new FileOutputStream(target);
byte[] b = new byte[1024];
int len = 0;
while((len = input.read(b))>0){
out.write(b,0,len);
}
input.close();
out.close();
}