Java文件操作

什么是文件

文件可认为是相关记录或放在一起的数据的集合.
Java程序中表示文件:Java API=>java.io.File类
File类访问文件属性:
在这里插入图片描述
File类的常用方法:

方法名称说明
boolean exits()判断文件或目录是否存在
boolean isFile()判断是否是文件
boolean isDirectory()判断是否是目录
String getPath()返回此对象表示的文件的相对路径名
String getAbsolutePath()返回此对象表示的文件的绝对路径名
String getName()返回此对象表示的文件或目录的名称
boolean delete()删除此对象指定的文件或目录
boolean creatNewFile()创建名称的空文件,不创建文件夹
long length()返回文件的长度,单位为字节,如果文件不存在,则返回0L

程序通过流来读写文件:流是指一连串流动的字符(字节),是以先进先出方式发送信息的通道.
在这里插入图片描述
输入/输出流与数据源
在这里插入图片描述
Java流的分类
输入输出流是相对于计算机内存来说的
在这里插入图片描述
字节流是8位通用字节流,字符流是16位Unicode字符流
在这里插入图片描述
文件的读写
文本文件的读写

  • 用FileInputStream和FileOutputStream读写文本文件.
  • 用BufferedReader和BufferedWriter读写文本文件.
    二进制文件的读写
  • 使用DataInputStream和DataOutputStream读写二进制文件.

文本文件的读写

使用字节流读文本文件
在这里插入图片描述
FileInputStream小结
在这里插入图片描述
使用字节流写文本文件

在这里插入图片描述
FileOutputStream小结
在这里插入图片描述
⚠️⚠️⚠️注意
1.前两种构造方法在向文件写数据时将覆盖文件中原有的内容.
2.创建FileOutputStream实例时,如果相应的文件并不存在,则会自动创建一个空的文件.
3.创建文件时,必须保证其路径存在,否则文件创建失败.


使用字符流读写文件
在这里插入图片描述
使用FileReader读取文件
在这里插入图片描述
使用BufferedReader读文本文件
如何提高字符流读取文本文件的效率?
使用FileReader类BufferedReader类.
BufferedReader类是Reader类的子类,带有缓冲区,按行读取内容的readLine()方法(这是BufferedReader类特有的方法)
在这里插入图片描述
Reader类常用方法

  • int read()
  • int read(byte[] c)
  • read(char[] c,int off,int len)
  • void close()
    子类BufferedReader常用的构造方法
  • BufferedReader(Reader in)
    子类BufferedReader特有的方法
  • readLine()
    FileWriter写文件
    在这里插入图片描述
    使用BufferedWriter写文件
    如何提高字符流读取文本文件的效率?
    使用FileWriter类BufferedWriter类.
    BufferedWriter类是Writer类的子类,带有缓冲区。
    在这里插入图片描述
    Writer类常用方法
  • writeString str)
  • write(String str,int off,int len)
  • void close()
  • void flush()
    子类BufferedWriter常用的构造方法
  • BufferedWirter(Writer out)

二进制文件的读写

DataInputStream类

  • FileInputStream的子类
  • 与FileInputStream类结合使用读取二进制文件
    DataOutputStream类
  • FileOutputStream的子类
  • 与FileOutputStream类结合使用读取二进制文件
    使用DataInputStream读二进制文件
    在这里插入图片描述
    使用DataOutputStream写二进制文件
    在这里插入图片描述

Properties文件

在配置文件中经常用到"键-值"对的组合.
常见的properties文件:
用户的配置;用户密码的保存等等.
在这里插入图片描述
使用Properties类读出配置
Java中可以使用Properties类来读取和写入Properties文件.
在这里插入图片描述
Properties类
在这里插入图片描述
使用Properties类写入配置
在这里插入图片描述


小结
  • File类用于访问文件或目录的属性
  • 程序和数据源之间通过流练习
    输出流和输入流
    字节流和字符流
  • FileInputStream和FileOutputStream以字节流的方式读写文本文件
  • BufferedReader和BufferedWriter以字符流的方式读写文本文件,而且效率更高
  • DataInputStream和DataOutputStream 可用于读写二进制文件
  • 使用Properties类可以方便地读出和写入配置文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值