字节流的继承体系

字符流的继承体系

字符编码是什么?常见的字符编码表有哪些?

字符编码(英语:Character encoding)也称字集码,是把字符集中的字符编码为指定集合中某一对象,以便文本在计算机中存储和通过通信网络的传递。常见的例子包括将拉丁字母表编码成摩斯电码ASCII

常见的字符编码表如下:

ASCII:将字母、数字和其他符号编号,并用7比特的二进制来表示这个整数。通常会额外使用一个扩充的比特,以便以1个字节的方式存储。

GB2312:是一个简体中文字符集,由6763个常用汉字和682个全角的非汉字字符组成。

GBK:GBK编码标准兼容GB2312,共收录汉字21003个、符号883个,并提供1894个造字码位,简、繁体字融于一库

GB18030:是在GBK基础上增加了一部分汉字

Big5:在台湾、香港与澳门地区,使用的是繁体中文字符集

Unicode:将世界上所有的符号都纳入其中,无论是英文、日文、还是中文等,大家都使用这个编码表,这样就利于同一的管理,在这个编码表中每一个字符占两个字节

UTF-8:为了提高Unicode的编码效率,于是就出现了UTF-8编码。UTF-8可以根据不同的符号自动选择编码的长短。比如英文字母可以只用1个字节就够了。

IO流的常用方法

字节输入流

read() 读取一个字节

read(byte[]) 读取一个字节数组

字节输出流

write(int) 写入一个字节

write(byte[]) 写入一个字节数组

write(byte[] bytes , int off , int len) 一次写一个字节数组中的一部分

字符输入流

read() 读取一个字符

read(char[]) 读取一个字符数组

字符缓冲输入流

​ readLine() 读取一行字符串

字符输出流

write(int) 写入一个字符

write(char[]) 写入一个字符数组

write(char[] chs , int off , int len)一次写一个字符数组中的一部分

write(String) 写入一个字符串

write(String str , int off ,int len) 一次写一个字符串中的一部分

字符缓冲输出流

newLine() 写入一个换行符

打印流(PrintStream、PrintWriter)的特点

PrintStreamOutputStream基础之上提供了增强的功能,即可以方便地输出各种类型的数据(而不仅限于byte类型)的格式化表示形式。PrintStream的方法从不抛出IOException

PrintWriter提供了PrintStream的所有打印方法,其方法也从不抛出IOException

与PrintStream的区别:作为处理流使用时,PrintStream只能封装OutputStream类型的字节流,而PrintWriter既可以封装OutputStream类型的字节流,还能够封装Writer类型的字符输出流并增强其功能。

close()和flush()方法的的区别

flush():刷新缓冲区,流对象可以继续使用

close():先刷新缓冲区,然后后通知系统释放资源。流对象不可再使用了。

IO流一些问题的总结的更多相关文章

  1. Java基础之IO流

    很长时间都没有更新了,最近在补充JavaSE的一些细节部分 关于IO流的一些总结 首先要介绍的是File类,File类用于对文件和目录的一些操作 1.创建文件CreateNewFile() 2.对文件 ...

  2. Java中IO流,输入输出流概述与总结

    总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都是抽象类InputStream(字节输入 ...

  3. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  4. java IO流详解

    流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  5. IO流总结

    IO流的作用:用于设备和设备之间的数据传输. IO流的概念:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象. IO流的分类:  按照操作数据的类型分为两种: 字节流和字符流.  按 ...

  6. IO流

    流的概念和作用 学习JavaIO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特 ...

  7. Java IO流学习总结

    Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  8. 揭开Java IO流中的flush()的神秘面纱

    大家在使用Java IO流中OutputStream.PrintWriter --时,会经常用到它的flush()方法. 与在网络硬件中缓存一样,流还可以在软件中得到缓存,即直接在Java代码中缓存. ...

  9. java IO流 之 其他流

    一.内存操作流(ByteArrayInputStream.ByteArrayOutputStream) (一).   public class ByteArrayInputStream extends ...

  10. java IO流 之 字符流

    字符是我们能读懂的一些文字和符号,但在计算机中存储的却是我们看不懂的byte 字节,那这就存在关于字符编码解码的问题.所以在学习Io流的字符流前我们先了解些关于编码问题. 一.字符集与字符编码 1.什 ...

随机推荐

  1. windows10 edge浏览器关闭没有提示如何解决

    通常情况下,用户在win10 edge中打开多个窗口,点击关闭按钮就会出现“要关闭所有标签”提示,然后可以点击 取消来取消关闭edge.不过,最近一位windows10系统用户反馈自己在一次勾选“总是 ...

  2. 使用order by和group by的分析

    mysql 写sql的顺序:         select -> from-> where->group by->having->order by.  但mysql的解析 ...

  3. 基于第三方vuejs库组件做适配性个性开发

    相信大家在使用vuejs时候会用到很多的第三方库,能够找到适合自己的库并且加以使用可以大大加快进度,减少bug.但是很多时候会出现这样一个尴尬的境地: 基线的第三方组件并不能很好地满足我们自己地需求, ...

  4. 纯C语言实现线性链表

    #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef struct LNode{ ElemT ...

  5. PAT 1022D进制的A+B

    PAT 1022D进制的A+B 输入两个非负 10 进制整数 A 和 B (≤2​30−1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B ...

  6. 5 LInux系统目录结构

      ls /    显示根目录下的文件 /bin bin是Binary的缩写,这个目录存放着经常使用的命令 /boot 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件 /de ...

  7. Quality Center安装步骤

     测试管理工具 u 安装条件: Quality Center:QC9中文版 数据库:Oracle10 g 操作系统:Windows XP u 安装步骤: 1. 点击setup.exe,出现如下界面,点 ...

  8. 轻量级.Net ORM SqlSuger项目实战

    SqlSuger,清垃圾ORM实战例子. //添加引用 using SqlSugar; //在构造函数中实例化SqlSuger clinet = new SqlSugarClient(new Conn ...

  9. Vmware samba 搭建——Win10 共享

    配置环境 Win10 Vmware 15 ubuntu 16.04 Vmware 设置 安装 sudo apt-get install samba # 安装samba sudo apt-get ins ...

  10. Latex使用过程中的一些总结

    本文主要总结在使用Latex过程中遇到的一些问题及解决方案. 一:关于参考文献 1.如何在paper同一处用\cite命令同时引用多篇文献? 用\cite{bibtex1}\cite{bibtex2} ...