-
什么是IO流
IO: input output,java的标准输出。
io是循序读写方式,只能顺序向后进行读或写操作,并且不能同时进行。 -
为什么需要IO
功能和RandomAccessFile一样。但是RAF是随机读写形式,而文件流是循序读写形式。读写灵活度不如RAF,但是基于链接流可以完成复杂的数据读写。 -
IO的分类
java.io.InputStream:所有字节输入流的超类,规定读取字节相关方法。
java.io.OutputStream:所有字节流输出的超类,规定写入字节相关方法。
流就相当于一根管道。就相当于现实生活中吸管,输液用的针管。 -
写入操作
public class FOSDemo {
public static void main(String[] args) throws IOException {
//后面加true可以进行追加,不加true就是覆盖模式
FileOutputStream fos = new FileOutputStream("fos.txt",true);
String str = "流太厉害了-奥利给";
byte[] data = str.getBytes("utf-8");
fos.write(data);
System.out.println("over");
fos.close();
}
}
- 后面加true可以进行追加,不加true就是覆盖模式
- 读取操作
public class FISDemo {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("fos.txt");
byte[] data = new byte[1024];
int len = fis.read(data);
System.out.println("读取到了:"+len+"字节的内容");
String str = new String(data,0,len,"utf-8");
System.out.println(str);
fis.close();
}
}
- 相当于有一个1024大小的勺,文件的内容就是米。勺大,盛的次数就少。