码迷,mamicode.com
首页 > 编程语言 > 详细

Java: IO 学习小结

时间:2015-04-24 00:51:40      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:

源:

  键盘 System.in  硬盘 FileStream  内存 ArrayStream

目的:

  控制台 System.out  硬盘 FileStream  内存 ArrayStream

处理大文件或者多线程下载\上传  

  RandomAccessFile 或者内存映射文件

方便对对象的永久化存储和调用

  ObjectStream

方便操作打印流

  PrintWriter 和 PrintStream

序列流,对多个流进行合并

  SequenceInpuntStream

管道流,输入和输出可以直接连接,通过结合线程使用

  PipedInputStream PipedOutputStream

方便操作基本数据类型

  DataInputStream DataOutputStream

方便操作字节数组

  ByteArrayInputStream  ByteArrayOutputStream  

方便操作字符数组

  CharArrayReader CharArrayWriter

方便操作字符串

  StringReader StringWriter


字符编码:

  字符流的出现为了方便操作字符,更重要的是加入了字符转换.

  字符转换通过转换流来完成

    InputStreamReader

    OutputStreamWriter

  在两个对象进行构造时可加入字符集 

编码;

  字符串变成字节数组

  String --> byte[]     str.getBytes()(按照平台默认的字符集)    str.getBytes(String charsetName)(按照指定字符集编码)

解码:

  字节数组变字符串

  byte[] --> String  new String(byte[])   new String(byte[], charsetName)(按照指定的字符编码)

常见的字符集:

  ASCII:美国标准信息交换码

    用一个字节的7位就可以表示

  IOS8859-1:拉丁码表\欧洲码表

    用一个字节的8位表示

  GB2312:中国的中文编码表

  

  GBK:中文编码表升级,融合了更多的中文字符

  Unicode:国际标准编码,融合了多种文字

    所有字符都用两个字节表示,java语言就是用的unicode

  UTF-8:用3个字节来表示一个汉字

 

Java: IO 学习小结

标签:

原文地址:http://www.cnblogs.com/siyingcheng/p/4452188.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!