`

java IO 小结

阅读更多

经常有下面的写法,指定文件名和编码,读取文件

 

      new BufferedReader(new InputStreamReader(new FileInputStream(new File("file")), "GBK"));
       

 

简化一下也就是  文件--比特(byte)流--包装成字符(char)--包装成缓冲

 

 

new BufferedReader(new Reader(new InputStream( new File("file")), "UTF-8"));
 

 

InputStream是基于文件或者网络之类的得到的

Reader是包装了这个InputStream

Buffered就是再包装了一下

 

Stream是内容,Reader,Buffered之类的是基于内容的服务!

 

  • 关键点1是原始的Stream是从哪里来的??? 文件?网络?
  • 关键点2是在打开Stream时候可以指定编码,指定流内容的编码帮助java解码从而将流中的数据从Byte变成Char,char是unicode
  • 关键点3 java提供的io相关的api虽然有很多的类,但是大多是基于接口的和抽象类调用的。理清楚InputStream,OutputStream和Reader,Writer之间的关系对如何使用API很有帮助

 

 

 

分享到:
评论

相关推荐

    JAVA IO流小结

    JAVA IO流小结JAVA IO流小结JAVA IO流小结

    java io 类 小结 代码

    简洁分类 代码直接使用 InputStream OutputStream Reader Writer FileInputStream FileOutputStream FileReader FileWriter InputStreamReader OutputStreamWriter BufferedReader BufferedWriter ...

    Java学习IO流小结--字节流

    主要描述了常用字节流的用法,附上一些代码!

    Java学习IO流小结--字符流

    主要描述了常用字节流的用法,附上一些代码!

    (超赞)JAVA精华之--深入JAVA API

    1.3.11 小结 1.4 java中的一些常用词汇 1.5 J2SE学习中的30个基本概念 1.6 Java线程 1.7 Java 5.0多线程编程 1.8 Java Socket编程 1.9 Java的内存泄漏 1.10 抽象类与接口的区别 1.11 Java变量类型间的相互转换 2 ...

    Java基础知识点总结.docx

    Java数组与集合小结 305 递归 309 对象的序列化 310 Java两种线程类:Thread和Runnable 315 Java锁小结 321 java.util.concurrent.locks包下常用的类 326 NIO(New IO) 327 volatile详解 337 Java 8新特性 347 Java...

    JAVA SE学习精华集锦

    1.3.11 小结 56 1.4 java中的一些常用词汇 56 1.5 J2SE学习中的30个基本概念 58 1.6 Java线程 60 1.7 Java 5.0多线程编程 65 1.8 Java Socket编程 80 1.9 Java的内存泄漏 85 1.10 抽象类与接口的区别 86 1.11 Java...

    Java中String类和IO流——学习小结

    String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。String类对象创建后是一个常量,有final修饰,不能被修改。字符串重新赋值不是修改,而是生成了一个新的字符串,原先的字符串...

    疯狂JAVA讲义

    1.9 本章小结 22 本章练习 22 第2章 理解面向对象 23 2.1 面向对象 24 2.1.1 结构化程序设计简介 24 2.1.2 程序的三种基本结构 25 2.1.3 面向对象程序设计简介 27 2.1.4 面向对象的基本特征 28 2.2 UML...

    一些语言的按行读取文件的代码实现小结

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class Java...

    Java 2平台安全技术-结构,API设计和实现

    3.12 小结 67 第4章 安全结构的使用 70 4.1 安装JDK1.2 70 4.2 策略配置 71 4.2.1 配置系统型和用户专用型策略 71 4.2.2 配置应用程序专用型策略 72 4.2.3 配置一个可选Policy类的实现 72 4.2.4 缺省的策略文件格式 ...

    JAVA 2平台安全技术-结构,API设计和实现

    3.12 小结 67 第4章 安全结构的使用 70 4.1 安装JDK1.2 70 4.2 策略配置 71 4.2.1 配置系统型和用户专用型策略 71 4.2.2 配置应用程序专用型策略 72 4.2.3 配置一个可选Policy类的实现 72 4.2.4 缺省的策略文件格式 ...

    Java高级程序设计实战教程第五章-Java序列化机制.pptx

    Java高级程序设计 第5章 Java序列化机制 5.1 应用场景 5.2 相关知识5.3 实施过程 5.4 拓展知识5.5 拓展训练 5.6 课后小结5.7 课后习题 5.8 上机实训 Java高级程序设计实战教程第五章-Java序列化机制全文共15页,当前...

    java基础案例与开发详解案例源码全

    3.7.6 循环语句小结78 3.7.7 break语句79 3.7.8 continue语句82 3.8 JavaDebug技术84 3.9 本章练习85 第4章 4.1 一维数组90 4.1.1 为什么要使用数组90 4.1.2 什么是数组91 4.1.3 如何使用数组92 4.1.4 经验之谈-数组...

    Java中的缓冲流——学习小结

    这里需要说明一点小知识,在对硬盘进行读写操作时,一个完整的文件的读写速率要远远高于同样大小的散文件的读写速率。这是因为散文件需要不断地访问、关闭硬盘,极大地浪费了时间,缓冲流也是同样原理。 缓冲流基于...

    Java网络编程--Unix域协议:概述

    Unix域协议:概述 16.1 概述 175 16.2 用途 176 16.3 性能 177 16.4 编码举例 177 16.5 小结 179

    Java网络编程--T/TCP实现:TCP用户请求

    T/TCP实现:TCP用户请求 12.1 概述 120 12.2 PRU_CONNECT请求 120 12.3 tcp_connect函数 120 12.4 PRU_SEND和PRU_SEND_EOF请求 124 12.5 tcp_usrclosed函数 125 12.6 tcp_sysctl函数 126 ...12.8 小结 127

    Java网络编程--NNTP:网络新闻传送协议

    NNTP:网络新闻传送协议 15.1 概述 166 15.2 NNTP 167 15.3 一个简单的新闻客户 170 15.4 一个复杂的新闻客户 171 15.5 NNTP的统计资料 172 15.6 小结 173

    JavaNetIO

    Java NetIO 一步步从BIO - > BIO+多线程- >单线程+NIO(非阻塞IO) - > NIO(IO多路复用+单线程) - > NIO(IO多路复用+多线程) Java中的NIO其实是NewIO(另一种解释是NO-blocking IO,确实,在Java...小结:ServerSocketCh

    Java网络开发--TCP协议

    T/TCP协议 2.1 概述 23 2.2 T/TCP中的新TCP选项 23 2.3 T/TCP实现所需变量 25 2.4 状态变迁图 27 2.5 T/TCP的扩展状态 28 2.6 小结 30

Global site tag (gtag.js) - Google Analytics