目录

Java进阶五 -IO流

IO流

File:

  • 表示系统中文件或者文件的路径,只能对文件本身进行操作,不能读写文件里面的内容。

IO流

  • 存储和读取数据的解决方案,用于读写文件中的数据(可以读写文件中的数据或者网络中的数据)

流的分类:

1. 什么是IO流?

  • IO流是指计算机系统中用来存储和读取数据的一种解决方案。
  • I代表Input(输入),O代表Output(输出)。
  • 流(Stream)就像水流一样传输数据,它是一系列连续的数据单元。

2. IO流的作用?

  • IO流主要用于读写数据,无论是本地文件还是网络上的数据。

3. IO流按照流向可以分为哪两种流?

  • 输出流(OutputStream):从程序到文件的方向流动,即将数据从程序发送到外部设备(如磁盘文件)。
  • 输入流(InputStream):从文件到程序的方向流动,即将数据从外部设备(如磁盘文件)读取到程序中。

4. IO流按照操作文件的类型可以分为哪两种流?

  • 字节流(Byte Stream):可以操作所有类型的文件,因为它们是以二进制形式处理数据的。
  • 字符流(Character Stream):只能操作纯文本文件,因为它们是以字符编码的形式处理数据的。

5. 什么是纯文本文件?

  • 纯文本文件是可以用Windows系统自带的记事本打开并且能够读懂的文件。这类文件只包含文本信息,没有特殊的格式或排版指令。

IO的体系结构:

1FileOutStream

操作本地文件的字节输出流,可以把程序中的数据写到本地文件中。

代码实现:

java 复制代码
import java.io.FileOutputStream;
import java.io.IOException;

public class shu15_9 {
    public static void main(String[] args) throws IOException {

        // 创建对象->创建对象时参数是路径或者FIle都是可以的,
        // 如果文件不存在那么将会创建一个新的文件,但是要保证父级路径要存在
        FileOutputStream fos = new FileOutputStream("C:\\Users\\ABC\\IdeaProjects\\My-projects\\myfirstmodule\\src\\itheima\\shu15\\a.txt");

        // 写入数据->文件存在会覆盖原有的内容(以读取为算)
        // write方法写入的是整数,但是实际上写到本地文件中的是整数在ASCLL码上对应的字符
        //一次写一个
        byte num =99;
        fos.write(num);
        //一次写多个
        byte[] buf = {97, 98, 99,100,101,102,103,104,105};
        fos.write(buf);
        //多个数据的部分截取
        fos.write(buf,2,4);


        // 释放资源->可以解除资源的占用如果不写文件会被程序占用
        fos.close();
    }
}
本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
东方靖岚35 分钟前
R语言的数据库交互
开发语言·后端·golang
一路向北North1 小时前
IDEA加载项目时依赖无法更新
java·ide·intellij-idea
小萌新上大分2 小时前
SpringCloudGateWay
java·开发语言·后端·springcloud·springgateway·cloudalibaba·gateway网关
PacosonSWJTU4 小时前
python基础-13-处理excel电子表格
开发语言·python·excel
froginwe114 小时前
Perl 条件语句
开发语言
直视太阳4 小时前
springboot+easyexcel实现下载excels模板下拉选择
java·spring boot·后端
Code成立4 小时前
《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》第2章 Java内存区域与内存溢出异常
java·jvm·jvm内存模型·jvm内存区域
啥都鼓捣的小yao4 小时前
利用C++编写操作OpenCV常用操作
开发语言·c++·opencv
灼华十一4 小时前
Golang系列 - 内存对齐
开发语言·后端·golang
一 乐4 小时前
实验室预约|实验室预约小程序|基于Java+vue微信小程序的实验室预约管理系统设计与实现(源码+数据库+文档)
java·数据库·微信小程序·小程序·毕业设计·论文·实验室预约小程序