10.18-文件的创建与写入
Java IO流(InputStream/OutputStream)
在变量、数组以及对象中存储的数据都是暂时的,在程序结束后就会丢失。
为了能够永久性保存程序创建的数据,需要将其保存在磁盘的文件中,这样就可以在其他程序中使用这些数据。
Java的IO技术可以将数据保存在文本文件、二进制文件甚至压缩文件中以达到数据永久性保存的目的。
掌握IO技术可以提高对数据的处理能力
File类
该类用于文件或者文件夹(目录),其实例就是用于描述文件系统上的一个文件/文件夹;通过File类就可以操作硬盘上的文件或目录。
注意
File类只能用于表达文件的信息(名称、大小、修改日期等等),不能对文件的内容进行操作,表示文件系统对文件、目录的管理操作
常用方法
File(String fileNmae) 指定文件名的构造器
long length() 获取文件的长度(字节量)
long lastModified() 获取文件最后一次的修改时间
String getName() 获取文件名
String getPath() 获取相对路径
boolean exists() 判断文件是否存在
file.isFile() 判断file是否为文件
dir.isDirectory 判断dir是否为目录
boolean canRead() 判断是否可读
boolean canWrite() 判断是否可写
mkdir() 创建一个目录(文件夹)
createNewFile() 创建一个文件
例子-基本方法
例子-创建文件
例子-创建目录
例子-有参构造器创建文件
例子-创建多重目录并创建文件
例子-列出目录子项
例子-删除文件
例子-递归删除目录/文件
总结
File类代表文件、文件夹
可以实现文件系统的操作(创建、修改、删除、查找),但没有提供递归处理
new File()不是创建文件/文件夹,只是新建了一个内存对象来描述一个文件/文件夹File类不能操作文件里面的内容
文件:一个长长的byte有序序列
RandomAccessFile类
可以用于操作/修改文件里面的内容
注意
此类以byte(字节,8bit)为单位处理文件
使用文件指针来读写文件,一次读写一个byte
当读写文件内容时,文件指针自动加1,为了方便下次的读写操作
为了方便读写基本类型的数据,提供了基本类型数据的读写方法,底层依旧以字节为单位进行读写操作
常用方法
构造器
RandomAccessFile (String fileName,String mode)mode(状态) r/rw
创建该类对象时,会自动的打开该文件;
如果是写的时候文件不存在时将会自动创建文件
打开文件时,默认的文件指针位置为0
如果打开已存在的文件后立即写入,就是对文件内容的覆盖
如果将文件指针跳过
read()/write()read()是读取一个byte字节(读取到的结果填充到低八位)write()是写出一个byte字节(写出数据的低八位)
seek()一定文件读写指针close()文件的读写操作结束后需要关闭文件length()返回文件的长度(字节量)
例子-写文件
例子-读文件
例子-读写文件
练习
将控制台输入的内容,写入到当前目录下的note.txt中
(要求可以重复输入)
将当前目录下的tomcat.rar复制为tomcatCopy1.rar
最后更新于