随便说说
在java中想要区分字符流与字节流挺简单的,一般也就面试或笔试中会被问到,下面就放干货
怎么区分字符流与字节流
stream结尾都是字节流,reader和writer结尾都是字符流。
举例:
字节流:
InputStream
|-- FileInputStream (基本文件流)
|-- BufferedInputStream
|-- DataInputStream
|-- ObjectInputStream
字符流
Reader
|-- InputStreamReader (byte->char 桥梁)
|-- BufferedReader (常用)
Writer
|-- OutputStreamWriter (char->byte 桥梁)
|-- BufferedWriter
|-- PrintWriter (常用)
两者的区别及用处
两者的区别就是读写的时候一个是按字节读写,一个是按字符。 实际使用通常差不多。 在读写文件需要对内容按行处理,比如比较特定字符,处理某一行数据的时候一般会选择字符流。 只是读写文件,和文件内容无关的,一般选择字节流。
感言
翻了翻之前的笔记,感觉都是面试的干货。感觉学到的兄弟萌不妨点个赞支持一哈博主