java中二进制怎么说_一个视频从D盘拷贝到E盘,视频数据怎么流过去的?java中的IO流...

本文详细介绍了Java中的IO操作,包括基本概念、Java.io包提供的类和接口,以及如何使用File类进行文件和目录的操作。此外,还展示了如何通过FileInputStream和FileOutputStream实现文件的读取和写入,并提供了一个文件拷贝的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

I input 输入(读)

O output 输出(写)

广义上存储介质/设备/容器之间的数据传输就称为IO

内存 硬盘/文件

设备A 设备B

容器 容器

客户端 服务器

java.io包

Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。

438a935a670f7dc6c2b9fe79cca0673d.png
d23959a63b3d0dc61e9ea974bc2c898f.png

Java中对输入输出提供了API------java.io 包

java.io.File类

File类是文件、文件夹和磁盘分区的抽象

File file = new File( 文件路径 );

常用的方法:

--创建

createNewFile() 创建一个新的文件

mkdir() 创建单个文件夹

mkdirs() 创建多级目录

注意:判断文件是否存在 exists()

--删除

delete() 删除文件或目录

注意:先删文件再删目录

--查询

listRoots() 查询磁盘的分区情况

listRoots()[0].listFiles() 获取某个磁盘分区所有文件目录及文件

listRoots()[0].list () 获取某个磁盘分区所有文件目录及文件

listFiles() 查看当前目录下的所有子目录(包含文件)

isFile() 判断是否是文件

isDirectory() 判断是否是文件目录

getParentFile() 获取上级目录

getAbsolutePath() 获取绝对路径

先获取当前文件的绝对路径,在获取上级目录

file.getAbsoluteFile().getParentFile()

length() 文件长度(字节数)

toURI() 获取URI(统一资源管理器)地址(含URL地址)

c82ceaa79bfa1c220a937742aad33dea.png

字节流

IO操作,在计算机中其本质就是传递二进制数和字节。

针对输入输出有2个方向:

OutputStream

InputStream

对输入、输出流java中又提供了两个子类去操作文件:

FileOutputStream

FileInputStream

文件写操作的步骤:

1、[可选]创建File

2、创建FileOutputStream

3、write()方法进行写操作

4、清空缓存区

5、关闭流

7ea7aedb64762859c728bc5c5b47ca24.png

文件读操作的步骤:

1、[可选]创建File

2、创建FileInputStream

3、read()方法进行读操作

4、清空缓存区

5、关闭流

953d7aa611e1200c45f8ba1e2d702585.png
7645d4126667dda6cf15ca3e69314a53.png

注意:

1、 对OutputStream和InputStream之间进行IO操作,也就是涉及文本信息的传递,需要用byte[] 与 String之间转换,而且要注意charset(编码)的统一。

2、 用ByteArrayOutputStream作为存放字节数组的容器

3、 清空缓存区

4、 关闭相应的流

文件拷贝示例代码:

409b142d23127f6f9e876f310b4067e0.png
888d229be6647655c8eba75ac2df2e08.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值