在IO流中说了一个区别字节流和字符流的方法:字节流人类看不懂所以都是inputstream或者outputstream
字符流人们都能看得懂,所以在起名字的时候果断而自信的加上了reader和writer,但是那只是为了区分字节流和字符流。
接下来的转换流就流批了,名字里既有inputstream或者outputstream也有reader和writer:
- InputStreamReader
- OutputStreamWriter
转换流的出现是为了解决字符在不懂编码的问题时的读取乱码的问题,其实转换流的父类是其对应的字符流:
- OutputStreamWriter的父类是Writer
- InputStreamReader的父类Reader
所以转换流可以使用字符流的方法:
但是它使用的参数是字节流:FileInputStream和FileOutPutStream,第二各参数可以指定编码的格式,默认是utf-8
OutputStreamWriter osw=new OutputStreamWriter(new FileOutputStream("C:\"),"GBK");
本篇结合之前的IO应该对IO流没什么大问题了