这几天遇到很多流的问题,发现各种流有不同的用法和特点,准备慢慢总结一下:
1。bufferedreader,RandomAccessFile可以按行读取,这在对文件进行分析提取的时候很有用
2。OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(“dd.txt”),”UTF-8”);可以设定文件的编码。一般文件在window(GBK)和linux(UTF-8)等之间传递时要用到。(同理InputStreamReader)
3。writer一般具有write(String str),outputstream具有write(byte[] bytes)
4。new String().getBytes(),生成的字符串是系统的编码格式。如果想把一个String 从gbk转为utf-8 :new String(str.getBytes("gbk"),"utf-8");
5。InputStream中的字节编码取决于文件本身,而OutputSream生成的文件编码取决于字节编码。