1.操作文件或目录属性
在java中通过File类操作文件或目录。它可以查出与文件相关的信息,如名称、最后修改日期、文件大小等。常用方法有:exists,getname,delete,createNewFile,mkidr等。
操作步骤一般如下,创建一个文件或目录对象,该对象指向该文件的路径。然后使用File类相关方法操作。
2.Java中的流
File类只能对文件或目录的属性进行操作,但是不能访问文件的内容。不能读取或写入文件。
java中通过流来读写文件。
流是指一连串流动的字符,是以先进先出的方式发送和接受数据的通道。
按流向区分流分为输入和输出流。以程序的角度分辨输入和输出流。输出流以OutputStream和Writer作为基类。输入流主要为InputStream和Reader作为基类。
在java.io包中封装了许多输入/输出流的API,在程序中,这些输入/输出流类的对象称为流对象。
可以通过这些流对象将内存中的数据以流的方式写入文件,也可以通过流对象将文件中的数据以流的方式读取到内存。
构造输入流的对象时会和源数据源关联起来,而输出流的对象会和目标数据源关联起来。
按照数据处理单元划分,分为字节流和字符流。字节流是八位通用字节流,以InputStream和OutputStream作为基类,基本单位是字节。而字符流是16位Unicod字符流,基本单位是Unicode字符。字符流适合用来处理字符串和文本。其基类为Reader和Writer。字符流在操作是使用了缓冲区,而字节流直接操作文件。
输入流的类常用方法有:read,close,输出流的类常用方法有:write和close。
输入流的类常用子类有:FileInputStream,BufferedReader。
输出流的类常用子类有: FileOutputStream和BufferedWriter。
3.读写文本文件
使用FileInputStream和FileOutputStream读写文本文件。(字节流)
或者使用BufferedReader和FileReader读写文本文件。(字符流)
步骤为先通过对象关联文件,然后调用方法操作。
4.读写二进制文件
读写二进制文件常用的类有DataInputStream和DataOutputStream。与读写文本文件操作步骤类似。
5.重定向标准I/O
Java提供的两个标准输入/输出流,主要用于从键盘接受数据以及向屏幕输出数据。
java中提供了三个重定向标准输出/输入的方法。
setErr(PrintStream err),setIn(InputStream in),setOut(PrintStream out)。
重定向以后可以将标准I/O定向到其他的设备。例如将输出设备定位到文件。
6.序列化
序列化就是将对象的状态存储到特定存储介质中的过程,也就是将对象的相关信息保存到磁盘中。
如果想实现序列化,那么这个类必须实现了java.io.Serializable接口。
方法步骤如:创建一个对象输出流。
通过该对象输出流的方法写入对象。
7.反序列化
反序列化就是将磁盘中保存的对象信息读取出来。
步骤类似于序列化
8.对象引用的序列化
当一个类的成员包含其他类的对象,那么必须保证引用的类也是可序列化的。