body, table{font-family: 微软雅黑}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}

转换流的名字比较长,而我们常见的操作都是按照本地默认编码实现的,所以,为了简化我们的书写,转换流提供了对应的子类。

FileWriter(File file); 
          根据给定的 File 对象构造一个 FileWriter 对象。

FileWriter(File file,
boolean append)
 ;
          根据给定的 File 对象构造一个 FileWriter 对象。

FileWriter(String fileName) ;
          根据给定的文件名构造一个 FileWriter 对象。

FileWriter(String fileName,
boolean append)
 ;
          根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造
FileWriter 对象。

// 这两个类继承 OutputStreamWriter 类,所以成员方法还是和前面的一样

FileReader(File file) ;
          在给定从中读取数据的 File 的情况下创建一个新 FileReader

FileReader(FileDescriptor fd) ;
          在给定从中读取数据的 FileDescriptor 的情况下创建一个新 FileReader

FileReader(String fileName) ;
          在给定从中读取数据的文件名的情况下创建一个新 FileReader

        public static void main(String[] args) throws Exception {
        //        InputStreamReader isr = new InputStreamReader(new FileInputStream("1.txt"),"utf-8");
        //        OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("2.txt"),"utf-8");
                //和上面是一样的,如果要指定字符集就必须用上面的
/*             FileWriter fw = new FileWriter("3.txt");  //不用告诉是什么编码,都是默认本地编码;
                fw.write("你好,昆明");     //继承OutputStreamWriter类的方法
                fw.write('中');
                char[] ch = {'物','联','网','实','验','室'};
                fw.write(ch);
                fw.write(ch, 2, 3);
                fw.close();*/
               //InputStreamReader isr = new InputStreamReader(new FileInputStream("3.txt"));
                FileReader fileReader = new FileReader("3.txt");
                int read = fileReader.read();    //读一个
                System.out.println("read(): "+(char)read);
                char[] ch1 = new char[10];
                fileReader.read(ch1);
                System.out.println(new String(ch1));
                fileReader.read(ch1, 0, 5);    //光标在上次位置,接着往下读
                System.out.println(new String(ch1));
        }
}

Java——IO类,转换流简化写法的更多相关文章

  1. Java IO中转换流的作用

    在<Java网络编程>中,有这样一段话: ”Reader和Writer最重要的子类是InputStreamReader和OutputStreamWriter类. InputStreamRe ...

  2. Java IO编程——转换流

    所谓的转换流指的是可以实现字节流与字符流操作的功能转换,例如:进行输出的时候OutputStream需要将内容变为字节数组后才可以进行输出,而Writer可以直接输出字符串,这一点是方便的,所以很多人 ...

  3. Java——IO类 字符流概述

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  4. Java IO之处理流

    一.处理流: 增强功能,提供性能,在节点流之上. 二.节点流与处理流的关系 节点流(字节流.字符流)处于IO操作的第一线,所有操作必须通过它们进行: 处理流可以对其他流进行处理(提高效率或操作灵活性) ...

  5. Java IO 文件与流基础

    Java IO 文件与流基础 @author ixenos 摘要:创建文件.文件过滤.流分类.流结构.常见流.文件流.字节数组流(缓冲区) 如何创建一个文件 #当我们调用File类的构造器时,仅仅是在 ...

  6. Java IO: 其他字符流(下)

    作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 本小节会简要概括Java IO中的PushbackReader,LineNumberReader,St ...

  7. Java IO 类一览表

    下表列出了大多数(非全部)按输/输出,基于字节或字符划分的 Java IO 类.

  8. Java基础 使用转换流进行文件的复制 / RandomAccessFile 类进行文件的复制

    笔记:  **使用转换流进行文件的复制 文本文件---字节流FileInputStream--> [InputStreamReader] -----字符流BufferedReader------ ...

  9. JAVA基础之转换流和缓冲流

    个人理解: 在理解的字符流和字节流的区别后.要是想读取指定的编码格式的文件时,特别是不是默认的格式时,就需要转换流了,需要注意的是字符流是需要清除缓冲区的:当需要快速的进行读取时,则需要缓冲流.存在即 ...

随机推荐

  1. Dell Vostro5370安装Win10/Ubuntu18LTS

    如何安装Win10/Ubuntu双系统 测试环境: DELL PRECISION 7510: CPU:Intel Core i5-6300HQ HD:256G NVME SSD 操作步骤: 无损将硬盘 ...

  2. ubuntu16.04下无线网卡无法正常连网

    背景:无线网卡初次连接可以正常上网,但是用了一会儿就会出现无法上网的情况 版本: Ubuntu 16.04 一.分析: 1.使用ifconfig命令发现不会显示无线网卡,说明无线网卡被关闭,笔者输出的 ...

  3. 分布式系统一致性协议--2PC,3PC

    分布式系统中最重要的一块,一致性协议,其中就包括了大名鼎鼎的Paxos算法. 2PC与3PC 在分布式系统中,每一个机器节点虽然能够明确知道自己在进行事务操作过程中的结果是成功或是失败,但是却无法直接 ...

  4. MySQL中datetime和timestamp的区别及使用

    MySQL中有关TIMESTAMP和DATETIME的总结 转载自iVictor,原文链接:http://www.cnblogs.com/ivictor/p/5028368.html 一.MySQL中 ...

  5. The DELETE statement conflicted with the REFERENCE constraint

    Page是主表,主键是pageid:UserGroupPage表中的PageID字段是Page表里的数据. https://www.codeproject.com/Questions/677277/I ...

  6. 2017 ACM/ICPC 新疆赛区 I 题 A Possible Tree 带权并查集

    传送门 题意:给定一棵带权树的形态, 但是并不知道每天条边的具体权重. 然后给m个信息, 信息格式为u v val, 表示在树上u 到 v 的路径上经过的边的权重的异或和为val, 问前面最多有多少个 ...

  7. 抽象类的继承,接口的实现,接口类型数组的使用,根据instanceof判断(返回)是否该是哪一个类型,类型的强转.

    总觉得之前第2处有点问题,果然. 还需要instanceof判定一下,然后还需要把数组Animal[]转为Pet的才有方法play()~~~!

  8. Spring编译AOP项目报错

    警告: Exception encountered during context initialization - cancelling refresh attempt: org.springfram ...

  9. HDU 2460 Network(桥+LCA)

    http://acm.hdu.edu.cn/showproblem.php?pid=2460 题意:给出图,求每次增加一条边后图中桥的数量. 思路: 先用tarjan算法找出图中所有的桥,如果lowv ...

  10. MVC ---- ckeditor 循环遍历并绑定blur事件

    function GetFollowList(page) { , pages: page }; pages = JSON.stringify(pages); var datas = { param: ...