【代码笔记】Java文件的输入输出(1)——Java.io包的初步理解
- Java里面文件的输入输出全部在java.io包里面。
- Java.io包里面所有的类都需要掌握。




- java.io包里面所有的东西都在上面了。
- 包里面的相关类、异常等树关系如下
类分层结构
- java.lang.Object
- 对象的母类,所有对象都在这个类之下。
- java.io.Console (implements java.io.Flushable)
- 比如:从eclipse的控制台读取数据,不用eclipse基本没啥用。
- java.io.File (implements java.lang.Comparable<T>, java.io.Serializable)
- 用户界面和操作系统使用与系统相关的路径名字符串 来命名文件和目录。申明关联一个文件的路径。
- java.io.FileDescriptor
- 这个搞不懂有什么用……
- java.io.InputStream (implements java.io.Closeable)
抽象类。表示字节输入流的所有类的超类,需要定义
InputStream子类的来运用。
- java.io.ByteArrayInputStream
- 应该是字节数组输入流……API解释是:包含一个内部缓冲区,该缓冲区包含从流中读取的字节。内部计数器跟踪
read方法要提供的下一个字节。 - java.io.FileInputStream
- 从文件系统中的某个文件中获得输入字节。
- java.io.FilterInputStream
- 包含其他一些输入流,它将这些流用作其基本数据源,它可以直接传输数据或提供一些额外的功能。
- java.io.BufferedInputStream
- 创建一个内部缓冲区数组。在读取或跳过流中的字节时,可根据需要从包含的输入流再次填充该内部缓冲区,一次填充多个字节。
- java.io.DataInputStream (implements java.io.DataInput)
- 包装类DataInputStream提供了多种对文件的写入和读取方法
读取识别java的基本数据类型,整型 浮点型 布尔型这些东西都可以识别,但是相比FileInputStream,这种面向文件的读取就不可以。
相比FileInputStream读取的单位是字节,是因为他面向的是文件,它不管他要读取的东西是什么数据类型,统统以之为文件的形式,然后按照字节为单位,一个字节一个字节的读取。
- java.io.LineNumberInputStream
- 已过时。(意思就是别用就行)
- java.io.PushbackInputStream
- java.io.ObjectInputStream (implements java.io.ObjectInput, java.io.ObjectStreamConstants)
- java.io.PipedInputStream
- java.io.SequenceInputStream
- java.io.StringBufferInputStream
- java.io.ObjectInputStream.GetField
- java.io.ObjectOutputStream.PutField
- java.io.ObjectStreamClass (implements java.io.Serializable)
- java.io.ObjectStreamField (implements java.lang.Comparable<T>)
- java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
- java.io.ByteArrayOutputStream
- java.io.FileOutputStream
- java.io.FilterOutputStream
- java.io.BufferedOutputStream
- java.io.DataOutputStream (implements java.io.DataOutput)
- java.io.PrintStream (implements java.lang.Appendable, java.io.Closeable)
- java.io.ObjectOutputStream (implements java.io.ObjectOutput, java.io.ObjectStreamConstants)
- java.io.PipedOutputStream
- java.security.Permission (implements java.security.Guard, java.io.Serializable)
- java.security.BasicPermission (implements java.io.Serializable)
- java.io.SerializablePermission
- java.io.FilePermission (implements java.io.Serializable)
- java.security.BasicPermission (implements java.io.Serializable)
- java.io.RandomAccessFile (implements java.io.Closeable, java.io.DataInput, java.io.DataOutput)
- java.io.Reader (implements java.io.Closeable, java.lang.Readable)
- java.io.BufferedReader
- java.io.LineNumberReader
- java.io.CharArrayReader
- java.io.FilterReader
- java.io.PushbackReader
java.io.InputStreamReader
- java.io.FileReader
- java.io.PipedReader
- java.io.StringReader
- java.io.BufferedReader
- java.io.StreamTokenizer
- java.lang.Throwable (implements java.io.Serializable)
- java.lang.Error
- java.io.IOError
- java.lang.Exception
- java.io.IOException
- java.io.CharConversionException
- java.io.IOException
- java.io.EOFException
- java.io.FileNotFoundException
- java.io.InterruptedIOException
- java.io.ObjectStreamException
- java.io.InvalidClassException
- java.io.InvalidObjectException
- java.io.NotActiveException
- java.io.NotSerializableException
- java.io.OptionalDataException
- java.io.StreamCorruptedException
- java.io.WriteAbortedException
- java.io.SyncFailedException
- java.io.UnsupportedEncodingException
- java.io.UTFDataFormatException
- java.io.Writer (implements java.lang.Appendable, java.io.Closeable, java.io.Flushable)
- java.io.BufferedWriter
- java.io.CharArrayWriter
- java.io.FilterWriter
- java.io.OutputStreamWriter
- java.io.FileWriter
- java.io.PipedWriter
- java.io.PrintWriter
- java.io.StringWriter
- java.io.OutputStreamWriter
接口分层结构
- java.io.Closeable
- java.io.DataInput
- java.io.ObjectInput
- java.io.DataOutput
- java.io.ObjectOutput
- java.io.FileFilter
- java.io.FilenameFilter
- java.io.Flushable
- java.io.ObjectInputValidation
- java.io.ObjectStreamConstants
- java.io.Serializable
- java.io.Externalizable
- a
- e
【代码笔记】Java文件的输入输出(1)——Java.io包的初步理解的更多相关文章
- 在存放源程序的文件夹中建立一个子文件夹 myPackage。例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage)。在 myPackage 包中创建一个YMD类,该类具有计算今年的年份、可以输出一个带有年月日的字符串的功能。设计程序SY31.java,给定某人姓名和出生日期,计算该人年龄,并输出该人姓名、年龄、出生日期。程序使用YM
题目补充: 在存放源程序的文件夹中建立一个子文件夹 myPackage.例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage).在 m ...
- IO与文件读写---使用Apache commons IO包提高读写效率
觉得很不错,就转载了, 作者: Paul Lin 首先贴一段Apache commons IO官网上的介绍,来对这个著名的开源包有一个基本的了解:Commons IO is a library of ...
- Python学习笔记六--文件和输入输出
6.1文件对象 所有Python对文件的操作都是基于对文件对象的操作.那么就从文件对象的创建说起.open()[file()]提供初始化输入输出的接口.open()成功打开文件时会返回一个文件对象. ...
- Mac与Widow下编译与运行java文件引入多个外部jar包
记录下,以后万一用得着呢 1.MAC环境下: 前提:在终端跳转到当前的源文件目录(cd xx), 并且配置好jdk,这里面不是重点 编译命令:注意连接用 : 号 javac -cp commons ...
- C# 代码笔记_文件
string Route = @"D:\ksy\ksy\WebSite1\";//文件地址 string File_name = "user ...
- 【java学习笔记】文件操作
文件操作 java.io.File ①创建删除文件及目录 ②查看文件及目录属性 ③文件过滤器 (PS:不包括文件读写数据) 1.单个文件 创建单个文件,查看属性,删除单个文件. package tmp ...
- 夯实Java基础系列5:Java文件和Java包结构
目录 Java中的包概念 包的作用 package 的目录结构 设置 CLASSPATH 系统变量 常用jar包 java软件包的类型 dt.jar rt.jar *.java文件的奥秘 *.Java ...
- Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包
一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mv ...
- Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件?
ylbtech-Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件? 1.返回顶部 1. Java 实例 - 如何编译 Java 文件 Java ...
随机推荐
- 模板【洛谷P3368】 【模板】树状数组 2
P3368 [模板]树状数组 2 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的值 树状数组区间加,单点查询. code: #include <i ...
- 洛谷 P2330 [SCOI2005]繁忙的都市(最小生成树)
嗯... 题目链接:https://www.luogu.org/problemnew/show/P2330 这道题的问法也实在是太模板了吧: 1.改造的道路越少越好 2.能够把所有的交叉路口直接或间接 ...
- 【Leetcode】Maximum Product Subarray
Find the contiguous subarray within an array (containing at least one number) which has the largest ...
- React应用程序设计过程中如何区分模块到底是state还是props?
根据官方文档,满足以下任意条件的模块,就不是State,原文如下: 1.Is it passed in from a parent via props? If so, it probably isn’ ...
- D. Minimum Diameter Tree Round #528 (Div. 2)【树】
一.题面 题目链接 二.分析 该题注意读题的时候有强调边的权值为非负(即可以为0),此题就是求树两个叶子节点之间的最短距离.为了使两个叶子节点之间的距离最短,那么其实就是让每个最后到叶子的那条路径尽量 ...
- QDU_组队训练(ABEFGHKL)
A - Accurately Say "CocaCola"! In a party held by CocaCola company, several students stand ...
- P2801 教主的魔法
传送门 $N$ 太大了主席树过不了 考虑分块 对每个块内的元素排序,询问就对大块二分查找,对两边小的部分暴力枚举 修改时维护 $add[i]$ 标记,维护当前块内整块已经加的数 那么整块的就直接修改 ...
- bzoj1934 Vote 善意的投票 最小割(最大匹配)
题目传送门 题目大意:很多小朋友,每个小朋友都有自己的立场,赞成或者反对,如果投了和自己立场不同的票会得到一个能量.又有很多朋友关系,如果一个人和他的一个朋友投的票不同,也会得到一个能量,现在问,通过 ...
- C# 关于utf-8的研究
前提 如果一不小心把字符转成utf8的格式,但是却产生了乱码.这个时候要么就是寻找其他的转码方式,要么就不想要了,直接过滤吧. 这里说的是直接过滤的办法. 参考链接 https://netvignet ...
- UVALive - 4682
/*H E A D*/ struct Trie{ int son[maxn<<2][2]; int b[67],tot; void init(){ // memset(son,0,size ...