zoukankan      html  css  js  c++  java
  • 第十周课程总结

    一、字节流与字符流基本操作

    1.在Java中IO操作以文件操作为例,主要操作流程如下:

    • (1) 使用File类打开一个文件。

    • (2)通过字节流或字符流的子类指定输出的位置。

    • (3)进行读/写操作。

    • (4)关闭输入/输出。

    2.异常的处理的格式

    try{可能有问题的代码}
    catch(Exception e){问题的解决方式}
    finally{一定会执行的代码,一般为关闭资源等内容}
    

    二、字节流与字符流的区别(除了代码上的区别)

    • 1.在字符流的操作中,所有的字符都是在内存中形成的,所以在输出前会将所有的内容暂时保存在内存之中,所以使用了缓存区暂存数据。

    • 2.字节流在操作的时候本身不会用到缓冲区(内存),是于文件本身直接操作,而字符流在操作时使用到缓冲区,通过缓冲区再操作文件。

    三、转换流——OutputStreamWrite类与InputStreamReader类

    • 1.把字节流转换成字符流,或者把字符流转为字节流 称为转换流:
    InputStreamReader(前缀是功能,后缀是体系):字节流通向字符流的桥梁。他可以使用指定的charset读取字节流并将其解码为字符。
    
    OutputStreamWriter:字符流通向字节流的桥梁,他可以使用指定的charset将要写入流的字符编码成字节 。
    

    2.内存操作流

    • (1)字节内存流:ByteArrayInputStream(内存字节输入流)、ByteArrayOutputStream(内存字节输出流)。使用byte数据类型。

    • (2)字符内存流:CharArrayReader(内存字符输入流)、CharArrayWriter(内存字符输出 流)。使用Char数据类型。

    3.System.in

    • System.in实际上是一个键盘的输入流,其本身是InputStream类型的对象,可以完成从键盘读取数据的功能。

    4.关于乱码问题

    • 指定大小会出现空间限制,不指定大小输入中文会产生乱码。最好的输入方式是将全部输入的数据暂时放到一块内存中,然后一次性从内存中读取出数。可以使用BufferedReader类完成。

    5.BufferedReader 字符流,只能装饰字符流,不能装饰字节流。有个重要且好用的方法是readLine()整行读取字符。

    6.字节流(操作byte数据)

    输出数据:OutputStream类
    输入数据:InputStream类
    

    7.字符流

    输出数据:Writer类
    输入数据:Reader类
    

    8.字节流在操作时本身不会用到缓冲区,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件。
    9.操作流程:

    1、使用File类打开一个文件
    2、通过字节流或字符流的子类,指定输出的位置
    3、进行读/写操作
    4、关闭输入/输出
    

    10.System类

    System.out 即向显示器上输出(希望用户可以看见的信息
    System.err 表示的是错误的标准输出(不希望用户可以看见的信息
    System.in  从键盘中读取数据
    
  • 相关阅读:
    使用netty实现im聊天
    使用rabbitmq实现集群im聊天服务器消息的路由
    springcloud feign使用
    10万用户一年365天的登录情况如何用redis存储,并快速检索任意时间窗内的活跃用户
    redis的rdb与aof持久化机制
    springcloud-zinpin的安装与使用
    kafka的基本安装与使用
    RabbitMq 实现延时队列-Springboot版本
    RabbitMq 基本命令
    Dcoker 安装 rabbitMq
  • 原文地址:https://www.cnblogs.com/freezinng/p/11788587.html
Copyright © 2011-2022 走看看