常用流

作者: VikingOldYoung | 来源:发表于2016-11-10 23:10 被阅读0次

一、处理流

用于增强功能,提高性能。位于节点流之上

1.缓冲流

  • 字节缓冲流:
    • BufferdeInputStream
    • BufferedOutputStream
  • 字符缓冲流:
    • BufferedReader(新增readLine()方法)
    • BufferedWriter(新增newLine()方法)

要使用新增方法就不能用多态了
缓冲流使用方法:缓冲流(节点流) 包裹节点流。建议使用缓冲流提高性能。

字符缓冲流示例

public static void copy(File src, File dest) throws IOException {
        // 选择流,这里测试新方法,声明就不能用多态了。
        BufferedReader bread = new BufferedReader(new FileReader(src));
        BufferedWriter bwrite = new BufferedWriter(new FileWriter(dest));
        // 用来临时储存数据的字符串
        String str;
        // 操作,读取在while里就读了
        while (null != (str = bread.readLine())) {
            bwrite.write(str);
            // 类似于\r\n
            bwrite.newLine();
            // 刷新是个好习惯
            bwrite.flush();
        }
        // 关闭资源
        bwrite.close();
        bread.close();
    }

<br />

二、转换流

字节流转换为字符流,处理乱码(编码集,解码集)

  • 输入流:InputStreamReader(编码)
  • 输出流:OutputStreamWriter(解码)

使用:转换流(字节流) 即可转为字符流来使用
编码转码测试
算了,太简单,直接看转换流的程序。也是拷贝,同时使用了两种流

public static void main(String[] args) throws IOException {
        File f=new File("F:/javaIotest/213.txt");
        File dest=new File("F:/javaIotest/诗歌.txt");
        //InputStreamReder和OutputStreamWriter 字节流转换为字符流,可以在形参里选择编码|解码集
        //这里选择gbk即Ascall码编码,即读取的文件是gbk格式的,如果不选择直接使用utf-8的话会乱码,怎么输出都不对啦。读取都错了
        BufferedReader is=new BufferedReader(new InputStreamReader(new FileInputStream(f)));
        //解码使用默认的平台解码,我这里是utf-8,可以选择任何格式输出。
        BufferedWriter os=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(dest)));
        String str;
        while(null!=(str=is.readLine())){
            os.write(str);
            os.newLine();
            os.flush();
        }
        os.close();
        is.close();
    }

相关文章

  • 常用流

    一、处理流 用于增强功能,提高性能。位于节点流之上 1.缓冲流 字节缓冲流:BufferdeInputStream...

  • JavaSE Day19 IO

    1. Java 中常用的 I/O 流常用类型在哪个包?常用类型有哪些? I/O 流的常用类型都在 java.io ...

  • IO之字节流实例:

    输出流:OutputStream,常用子类:FileOutputStream输入流:InputStream,常用子...

  • ffmpeg直播相关的命令

    最全最常用的RTMP、RTSP、HTTP协议流常用直播流地址https://blog.csdn.net/u0141...

  • java IO流-常用流

    根据java类之间的关系,整理出java常用IO流之间的UML类图 初学UML,如果有错的话请谅解,这里面只写了关...

  • 常用流操作

  • java基础-I/O流

    知识点 I/O流的基本知识 I/O流中常用流的关系 I/O流之FileInputSrteam,FileOutput...

  • 10.6-全栈Java笔记:常见流详解(四)

    上节我们讲到「Java中常用流:数据流和对象流」,本节我们学习文件字符流和文件缓冲流~ 文件字符流 前面介绍的文件...

  • 10.6-全栈Java笔记:常见流详解(四)

    上节我们讲到「Java中常用流:数据流和对象流」,本节我们学习文件字符流和文件缓冲流~ 文件字符流 前面介绍的文件...

  • WSJ--Java IO学习笔记

    一、流的分类 二、IO流常用的基类 三、字符流 1、FileWriter基本使用 FileWriter构造方法 2...

网友评论

      本文标题:常用流

      本文链接:https://www.haomeiwen.com/subject/pugxpttx.html