Java笔记-高级篇(2)

第六章 IO流

一.File文件
File类:文件和目录路径名的抽象表象形式(文件/文件夹)

File(File parent,String child):根据字符串创建一个File实例

File(String parent,String child):通过将给定路劲名字符串转换为抽象路径名的实例

File(String pathname): 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例

createNewFile()创建文件 :当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件(boolean类型)1.只能创建文件 2.文件必须不存在

exists() :判断此抽象路径名表示的文件或目录是否存在。(boolean类型)

getCanonicalPath() :返回此抽象路径名的规范路径名字符串。

getName() :返回由此抽象路径名表示的文件或目录的名称。

getParent(): 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null

delete() : 删除此抽象路径名表示的文件或目录(返回boolean类型)
创建文件夹:(Boolean)
1.mkdir() : 创建此抽象路径名指定的目录。//创建文件夹时父目录必须存在
2.mkdirs() :创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。//创建文件夹时父目录可以不存在

isDirectory() :测试此抽象路径名表示的文件是否是一个目录。(是否是文件夹)

isFile(): 测试此抽象路径名表示的文件是否是一个标准文件。(是否是文件)

listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。

二.IO流(输入流/输出流)

  1. 字节流:字节输入流,字节输出流
  2. 字符流:字符输入流,字符输出流
    Append:False(覆盖)/True(追加)
    在输出流中 \r\n:代表换行
    \t::在excel中的换列
    (1)IO流基本结构
    在这里插入图片描述

Reader:
所有的输入字符流的父类(抽象类)
BufferedReader
InputStreamReader->FileReader:基本介质流从本地中读取数据
StringReader:从字符串中读取数据
PipeReader:和其他线程共用的管道工具
CharArrayeader:从char数组读取数据
BufferReader:缓冲流
Writer:
Filewriter:本地文件中写入数据
CharArrayWriter:数组char中写入数据
StringWriter:字符串中写入数据
(2)IO概念和作用
流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将抽象为各个种类。
(3)IO流的分类
1.根据处理数据类型不同分为:字符流和字节流
2.根据数据流向不同分为:输入流和输出流
3.根据同数据源之间的直接关系分为:节点流和处理流
(4)字节流和字符流
1)字符流:数据编码不同,对字符进行操作的对象,本质是基于字节流读取时,指定的码表
1.字节流和字符流的区别:
a.读写单位不同:字节流以字节为单位,字符流以字符为单位,
b.处理对象不同:字节流能处理所有类型的数据,字符流只能处理字符类型的数据
c.字节流:一次读入或读出8位二进制
d.字符流:一次读入或读出16位二进制
设备上无论是图片还是视频文字,都以二进制储存的,二进制最终都以一个8位数据单元体现,所以计算机中最小数据单元为字节。字节流可以处理设备上的所有数据,所有字节流一样可以处理字符数据
2.)结论:只要处理纯文本数据,就优先考虑使用字符流,除此之外都使用字节流。
字节流:
InputStream:所有输入字节流的父类
OutputStream:
(5)输入流和输出流
(6)节点流和处理流
节点流:直接使用与数据源相连,读取数据或者写入
为了更快的读写文件,使用处理流(减少磁盘操作,提高效率)
常用的节点流

  1. 父类:InputStream,OuputStream,Reader,Writer
  2. 文件:FileInputStream等
  3. 数组:
  4. 字符串
  5. 管道
    处理流:间接操作,在节点流基础之上再套接一层,套接在节点流上就是处理流,如果没有节点流,处理流不能单独操作。
  6. 缓冲流:增加了缓冲功能
  7. 转换流:InputStreamReader,OutputStreamReader实现字节流和字符流之间的转换
  8. 数据流:DataInputStream,DataOutputStream等提供将基础数据类型写入到文件中,或者读取出来
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值