Demo02.java 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package course;
  2. /**
  3. * @author WanJl
  4. * @version 1.0
  5. * @title Demo02
  6. * @description IO流
  7. * @create 2026/8/6
  8. */
  9. public class Demo02 {
  10. /*
  11. IO流
  12. IO:输入输出(Input/Output)
  13. 流:Stream是一种抽象概念,是对数据传输的总称,也就是说数据在设备直接的传输称为流,流的本质就是数据传输
  14. IO流就是用来处理设备之间的数据传输问题的,常见应用场景:文件赋值、文件上传、文件下载。
  15. IO流的分类:
  16. 按照数据的流向分类(相对于内存来说):
  17. 输入流:向内存输入数据,读数据。
  18. 输出流:从内存往外输出数据,写数据。
  19. 按照数据类型分类:
  20. 字节流(就是传输的每个数据都是byte类型)
  21. |- 字节输入流
  22. |- 字节输出流
  23. 字符流(就是传输的每个数据都是char类型)
  24. |- 字符输入流
  25. |- 字符输出流
  26. IO流的使用场景推荐:
  27. 如果是纯文本文件(.txt),建议使用字符流,因为1个字符等于2个字节
  28. 除了纯文本文件之外的任何文件包括文本、图片、视频、音频、等等任何文件,都建议是字节流。(Word、Excel、PPT、md、png、mp3、mp4、rmvb....)
  29. 如果不确定文件类型,就是有字节流
  30. InputStream和OutputStream
  31. OutputStream:这是一个抽象类,表示所有字节输出流类的父类
  32. InputStream:这是一个抽象类,表示所有字节输入流类的父类
  33. 他们的子类类名比较有特点:子类的名称都是以父类类名作为子类的后缀。
  34. 文件字节输入流:FileInputStream
  35. 文件字节输出流:FileOutputStream
  36. 使用字节输出流的步骤:
  37. 1、创建字节输出流对象
  38. 2、调用字节输出流的写数据的方法
  39. 3、释放资源,关闭流
  40. 使用字节输入流的步骤:
  41. 1、创建字节输入流对象
  42. 2、调用字节输入流的读数据的方法
  43. 3、释放资源,关闭流
  44. */
  45. }