当前位置:网站首页>文件常用操作 IO流原理及分类
文件常用操作 IO流原理及分类
2022-08-08 06:24:00 【四月的小尾巴】
目录
一 文件 P611
文件是什么:保存数据的地方————数据放在文件中,文件放在磁盘中
文件流:文件在程序中是以流的形式操作的。
站在程序的角度,进入程序的叫输入流,从程序出去的叫输出流
输入流:从文件中读取数据到程序中(磁盘到内存)
输出流:程序到文件

二 常用文件操作
创建文件对象相关构造器和方法:
new File(String pathname) //根据路径构建一个File对象
new File(File parent, String child) //根据父目录文件+子路径构建一个File对象
new File(String parent, String child) //根据父目录+子路径构建一个File对象
createNewFile 创建新文件//方式1
//注意 d:\\ 不能写成d,写成d表示在当前目录下
//创建文件news1.txt
File newFile1 = new File("d:\\","news1.txt");
if(newFile1.createNewFile()) {
System.out.println("创建成功");
}else {
System.out.println("创建失败")
}
//方式2
File newFile2 = new File("d:/news2.txt");
if(newFile2.creatNewFile()) {
System.println.out("创建成功");
}else {
System.println.out("创建失败")
}
//方式3
File file = new File("d:\\");
File newFile3 = new File(file, "news3.txt");
if(newFile3.creatNewFile) {
System.println.out("创建成功");
}else {
System.println.out("创建失败")
}1 方式一

注:路径写的是两个反斜杠,用一个正斜杆也可以。\\=/
自动返回类型可以用快捷键ctrl+alt+v也可以用.var+Enter
@Test要导一下包,测试只执行Test下面的方法


2 方式二

3 方式三

获取文件相关信息

目录操作

Java中,目录也被当做文件,用Java代码删除的文件或目录是不会在回收站中保存的,直接不见了

mkdirs创建多级目录(一个文件夹里面还有文件夹这种),mkdir创建一级目录
三 IO流原理及流的分类
Java IO流原理
1 IO是input和output的缩写,IO技术很实用,用于处理数据传输,读写文件,网络通讯等
2 Java程序中,对于数据的输入输出操作以流stream的方式进行

3 java.io包下提供了各种流类和接口,用以获取不同种类的数据,并通过方法输入或输出数据
4 输入input:读取外部数据(磁盘,光盘等存储设备的数据)到程序(内存)中。下图中网络连接,文件等等到程序也是输入流
5 输出output:将程序(内存)数据输出到磁盘,光盘等存储设备中
流的分类
按操作数据单位分:字节流(8bit)、字符流(按字符,不同编码一个字符对应的字节数不同)。字节流以字节为单位读取,字符流按照字符读取。字符效率高,但是对于二进制文件来说,字节流可以保证文件无损。字符流适用于文本文件
按数据流的流向分:输入流,输出流
按流的角色分:节点流,处理流/包装流
字节流分为字节输入流和字节输出流。字节输入流的父类是InputStream,字节输出流的父类是OutputStream。
字符流分为字符输入流和字符输出流。字符输入流的父类是Reader,字符输出流的父类是Writer
Java的IO流涉及40多个类,都是这四个父类的派生,且都以父类名作为子类名的后缀
流和文件的关系:相当于外卖小哥的派送和物流中心的关系。流在文件和内存之间传输,外卖小哥在用户和商家之间派送
边栏推荐
猜你喜欢
随机推荐
动手从零实现一个多层感知机(前馈神经网络)
4.Callable接口实现多线程
电动剃须刀市场现状研究分析与发展前景预测
CUDA10 installs a version of tensorflow that supports gpu
mycmsms target drone wp
Plant spice market research: China's market development status and business model analysis in 2022
cybox target machine wp
ps神经网络滤镜安装包,ai神经网络滤镜安装包
Map和Set
神经网络和多元线性回归,神经网络多元线性回归
利用Transformers自定义一个神经网络结构
内存, 泄漏,溢出
ER图是什么?
线程和进程定义
人脸识别数据集总结
Google Colab 快速上手
MongoDB3.x创建用户与用户角色
Mysql 事务
Mac下按装php的MongoDB扩展
DesignWare_APB_GPIO模块DUT&Testbench仿真


![[GWCTF 2019] I have a database 1](/img/03/46c1cc42414e37d0d98cd714e950c2.png)






