转载请注明原出处:http://www.cnblogs.com/lighten/p/7264196.html

1.前言

  断更一段时间,计划果然赶不上变化(还是太懒...)。这次一次性将剩余的5组字符流说完,原本也没有什么值得一说的了,再花两节描述完整个IO包的相关剩余内容和总结,就结束这一章节的学习了。看源代码可以将一些似是而非的不明之处明确,所以还是很有必要的。

2.Filter

  FilterReader和FilterWriter没有任何值得一提的地方,只是包装了一下所接受持有的其它Reader和Writer,然后调用其相关接口定义的方法而已。是一个抽象父类,比起字节流的Filter相关内,字符流的没有起到什么作用,实现类也少。

3.InputStreamReader和OutputStreamWriter

   这两个类原本是应该好好讲一下的,但是由于其实现实际上是借助了StreamDecoder和StreamEncoder这两个同样继承自Reader和Writer的类,InputStreamReader和OutputStreamWriter也就是调用了其类的相关方法。在初始化的时候,通过其静态方法,接受一个字节流产生对应的StreamDecoder和StreamEncoder。由于这两个类是sun包下,无法看到源代码,也就没什么可说的(还是懒),不过作用应该就是对字节按照指定的编码方式进行编码成字符。

4.File

  FileReader和FileWriter就是继承自上述的InputStreamReader和OutputStreamWriter,里面传递的是创建的一个文件字符流。整个过程其实是通过StreamDecoder和StreamEncoder包装文件的字节流,将其内容转换成字符。其它的也没什么。

5.Piped

  管道字符流和管道字节流几乎一模一样,就是一个char和byte的区别。直接看前面所讲的管道字节流的相关内容就可以了。这里不再阐述。

6.String

  StringReader和StringWriter的作用和CharArrayReader和CharArrayWriter基本一样,不过一个接收字符数组,一个接收字符串罢了,其它的没什么区别。和ByteArray字节流作用一致。

Java之IO(十三)File、Filter、Piped、String和InputStreamReader与OutputStreamWriter的更多相关文章

  1. Java基础-IO流对象之转换流(InputStreamReader与OutoutStreamWriter)

    Java基础-IO流对象之转换流(InputStreamReader与OutoutStreamWriter) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.转换流概述 我们之前 ...

  2. java之io之File类的list()方法过滤目录的使用

    java的io的知识中,File类必须掌握.File类是对文件或者文件夹的封装.它本身并不能对所封装的文件进行读写,它封装的只是文件或文件夹的周边知识,比如 大小啦,创建日期啦,路径啦等等. 如果Fi ...

  3. Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)

    第一讲     File类 一.概述 1.File类:文件和目录路径名的抽象表现形式 2.特点: 1)用来将文件或文件夹封装成对象 2)方便于对文件与文件夹的属性信息进行操作 3)File类的实例是不 ...

  4. Java的IO操作---File类

    目标 1)掌握File类作用 2)可以使用file类中方法对文件进行读写操作. File类 唯一与文件有关的类.使用file类可进行创建或删除操作,要想使用File类,首先观察File类的构造方法. ...

  5. java之io之file类的常用操作

    java io 中,file类是必须掌握的.它的常用api用法见实例. package com.westward.io; import java.io.File; import java.io.IOE ...

  6. Java中 IO类 - File类中的判断功能

    package com.hxzy.IOSer;import java.io.*;public class Demo05 { public static void main(String[] args) ...

  7. Java中Io类-File类的构造方法

    package com.hxzy.IOSer;import java.io.*;public class Demo02 { public static void main(String[] args) ...

  8. JAVA基础--IO输入输出(File使用)17

    一. File中的方法 1.  列举方法 /* * 获取指定目录以及子目录下的所有文件和文件夹 */ public class ListFilesDemo { public static void m ...

  9. Java文件(io)编程——File类的基本用法

    1.首先了解文件流的相关概念: 2.文件File类的基本用法 public class Demo_1 { public static void main(String[] args) { //创建一个 ...

随机推荐

  1. Fortran 数据类型

  2. HDU 1716 排列2 (格式问题+排列)

    题意:. 析:我们完全可以STL里面的函数next_permutation(),然后方便,又简单,这个题坑就是在格式上. 行末不能有空格,结尾不能有空行,不大好控制,必须控制好第一次数. 这个题本应该 ...

  3. python文件操作,读取,修改,合并

    # -*- coding:utf-8 -*- ''' 从11c开始提取 ''' import re import numpy as np import os year = '17A' ss=" ...

  4. Python 正斜杠/与反斜杠\

    首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Wi ...

  5. centOS下NFS服务器的安装配置详解

    一.NFS简介 NFS就是Network FileSystem的缩写,最早之前是由Sun公司所发展出来的.他最大的功能就是可以透过网络,让不同的机器.不同的操作系统可以彼此分享个别档案(share f ...

  6. Swift1.2与Xcode6.3 beta

    Xcode6.3和Swift1.2都已经发布.这次发布增强了Swift编译器也给Swift增加了一些新的特性.详细内容可以看这里.这里主要关注比较重要的内容. 编译器的改进 Swift1.2的编译器更 ...

  7. MVVM Light 新手入门(3) :ViewModel / Model 中定义“事件” ,并在View中调用 (无参数调用)

    今天学习MVVM架构中“事件”的添加并调用,特记录如下,学习资料均来自于网络,特别感谢翁智华 的 利刃 MVVMLight 6:命令基础 在MVVM Light框架中,事件是WPF应用程序中UI与后台 ...

  8. .net core2.0 codefirst 创建数据库的问题!

    appsettings.json和Startup.cs就不记录了,网上很多!! 1.必须在有DbContext类的项目里添加这3个NuGet引用 Microsoft.EntityFrameworkCo ...

  9. 2D and 3D Linear Geometry Kernel ( Geometry Kernels) CGAL 4.13 -User Manual

    1 Introduction CGAL, the Computational Geometry Algorithms Library, is written in C++ and consists o ...

  10. 批处理系列(18) - 基于BitLocker的开锁上锁

    首先要配置好BitLocker. 上锁 lock.bat @echo off rem 上锁前要结束一些程序,浏览器要注意:有恢复上次关闭项功能,按需设置取消该操作 taskkill /f /t /im ...