12_IO流_字节流

【Java IO流】字节流详解 什么是 IO 流?IO 流是存取数据的解决方案,在计算机中数据存放在硬盘的文件中,如果程序需要使用这些数据时,就会从文件中把数据读取到内存中,内存中数据的特点是不能永久化存储,程序停止,数据丢失。那么如何持久的保存程序中的数据呢?程序中的数据会通过写入的方式存储到硬盘的文件中,特点是可以长期的存储,不会随着程序的终止而丢失,那么 Java 语言是怎样读取和写入数据的呢? 阅读详情

前置知识

ASCII

ASCII ( American Standard Code for Information Interchange ) :美国信息交互标准代码(包括了英文和符号)

标准的 ASCII 使用 1 个字节存储一个字符

1 字节:00000000

GBK

汉字编码字符集,包含了 2 万多个汉字等字符,GBK 中一个中文字符编码成两个字节的形式存储

注意:GBK 兼容了 ASCII 字符集

2 字节:00000000,00000000

Unicode

Unicode 是国际组织制定的,是可以容纳世界上所有文字、符号的字符集

UTF-8:英文字符、数字等只占 1 个字节(兼容标准 ASCII 编码),汉字字符占用 3 个字节

编码与解码
import java.util.Arrays;

public class Test {
    public static void main(String[] args) throws Exception {
        // 1. 编码
        String data = "a我b";
        byte[] bytes = data.getBytes();  // 不填参数,默认按照当前编辑器平台UTF-8进行编码
        System.out.println(Arrays.toString(bytes));

        // 按照指定字符集进行编码
        byte[] bytes1 = data.getBytes("GBK");
        System.out.println(Arrays.toString(bytes1));

        // 2. 解码
        String s1 = new String(bytes);
        System.out.println(s1);

        String s2 = new String(bytes1,"GBK");
        System.out.println(s2);
    }
}

IO 流

体系介绍

IO 流体系

  • 字节流
    • 字节输入流(InputStream)===>(FileInputStream)
    • 字节输出流(OutputStream)===>(FileOutputStream)
  • 字符流
    • 字符输入流(Reader)===>(FileReader)
    • 字符输出流(Writer)===>(FileWriter)

注意!输入流、输出流都是指对 “内存” 的输入和输出,例如:文件输入流 FileInputStream 指的是"文件对内存的输入流"

文件字节输入流
  • 每次读取一个字节
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 1. 创建文件字节输入流管道,与源文件接通
//        InputStream is = new FileInputStream(new File("E:/Desktop/temp.txt"));
        InputStream is = new FileInputStream("E:/Desktop/temp.txt");  // 简化写法

        // 2. 开始读取文件的字节数据(当前文件里面写有"ab"两个字母)
        // 每次读取一个字节返回,如果没有数据了,返回-1
//        int b1 = is.read();
//        System.out.println(b1);  // 97
//
//        int b2 = is.read();
//        System.out.println((char) b2);  // b
//
//        int b3 = is.read();
//        System.out.println(b3);  // -1

        // 3. 用循环改造上面代码
        int b;
        while ((b = is.read()) != -1) {  // 此方法还是有问题:读取数据性能很差!读取中文字符一定会乱码
            System.out.println((char) b);
        }
        // 运行结果
        // a
        // b

        is.close();  // 一定要记得关闭管道!释放它所占据的系统资源
    }
}
  • 每次读取多个字节
import java.io.FileInputStream;
import java.io.InputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 文件中的数据:abc66
        // 1. 创建文件字节输入流管道,与源文件接通
        InputStream is = new FileInputStream("E:/Desktop/temp.txt");

        // 2. 开始读取文件中的字节数据
        byte[] buffer = new byte[3];
        int len = is.read(buffer);  // 每次读取多个字节到字节数组中去,返回读取的字节数量,读取完毕会返回-1
        String res = new String(buffer);
        System.out.println("读取的内容是: " + res);
        System.out.println("当次读取的字节数量: " + len);

        int len2 = is.read(buffer);
        // 注意: 读取多少,倒出多少
        String res2 = new String(buffer, 0, len2);
        System.out.println("读取的内容是: " + res2);
        System.out.println("当次读取的字节数量: " + len2);

        int len3 = is.read(buffer);
        System.out.println(len3);  // -1
        
        is.close();  // 关闭输入流管道

//        运行结果:

//        读取的内容是: abc
//        当次读取的字节数量: 3
//        读取的内容是: 66
//        当次读取的字节数量: 2
//         -1
    }
}
// 上面代码的改造

import java.io.FileInputStream;
import java.io.InputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 文件中的数据:abc66
        // 1. 创建文件字节输入流管道,与源文件接通
        InputStream is = new FileInputStream("E:/Desktop/temp.txt");

        // 2. 读取文件中的字节数据(使用循环的方法)
        byte[] buffer = new byte[3];
        int len;  // 记住读取了多少个字节
        while ((len = is.read(buffer)) != -1) {
            String res = new String(buffer, 0, len);  // 将数组中的 0 ~ len转为字符串输出
            System.out.println(res);
        }
        // 性能得到了明显的提升
        // 但是!这种方案也不能避免读取汉字输出乱码的问题


        is.close();  // 关闭输入流管道
    }
}
  • 一次性读取完全部字节
// 方法一

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 文件中的数据:abcd我爱你66

        // 一次性读取完文件中的所有字节到数组中去
        // 1.创建文件字节输入流管道,与源文件接通
        InputStream is = new FileInputStream("E:/Desktop/temp.txt");
        // 2.准备一个字节数组,它的大小需要和文件的大小正好一样大
        File f = new File("E:/Desktop/temp.txt");
        long size = f.length();
        byte[] buffer = new byte[(int) size];

        int len = is.read(buffer);
        System.out.println(new String(buffer));
        System.out.println(len);
        System.out.println(size);
        is.close();  // 关闭输入流管道

        // 运行结果
//        abcd我爱你66
//        15
//        15
    }
}
// 方法二

import java.io.FileInputStream;
import java.io.InputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 文件中的数据:abcd我爱你66

        // 一次性读取完文件中的所有字节到数组中去

        // 1.创建文件字节输入流管道,与源文件接通
        InputStream is = new FileInputStream("E:/Desktop/temp.txt");

        // 2.使用封装好的功能
        byte[] buffer = is.readAllBytes();
        System.out.println(new String(buffer));  // abcd我爱你66

        is.close();  // 关闭输入流管道
    }
}
文件字节输出流
import java.io.FileOutputStream;
import java.io.OutputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 1. 创建一个字节输出流管道与目标文件接通(默认是覆盖原文件内容的)
//        OutputStream ops =  new FileOutputStream("E:/Desktop/a.txt");

        // 如果是想要一个能够追加数据的管道:请将参数append的值设为true
        OutputStream ops = new FileOutputStream("E:/Desktop/a.txt", true);

        // 2. 开始写字节数据出去了
        // write() : 如果直接写内容进去,每次只能写一个字节; 如果用byte[]数组,则不受限制
        ops.write(97);
        ops.write('b');
//        ops.write('王');  // UTF-8字符集下,汉字占3个字节,因此这里开始会乱码

        byte[] bytes = "okok我爱你abc".getBytes();
        ops.write(bytes);

        // 换行符 : 为了不仅在 Windows 上能使用,我们建议写全,即:把 \n 写为 \r\n
        byte[] bytes1 = "\r\n".getBytes();
        ops.write(bytes1);

        ops.close();  // 关闭输出流管道,释放被占用的系统资源
    }
}
文件复制案例
// 以下代码,可以复制一切文件
// 原因:任何文件的底层都是字节,字节流做复制,是一字不漏的转移完全部字节,只要复制后文件格式一致就没问题!

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

public class Test {
    public static void main(String[] args) throws Exception {
        // 复制照片
        // 1. 创建一个字节输入流管道与源文件接通
        InputStream inputStream = new FileInputStream("E:/Desktop/photo.jpg");

        // 2. 创建一个字节输出流管道与目标文件接通
        OutputStream outputStream = new FileOutputStream("E:/Desktop/aaa/photo.jpg");

        // 3. 创建一个字节数组,负责转移字节数据
        byte[] buffer = new byte[1024];  // 1KB

        // 4. 从字节输入流中读取字节数据,写出去到字节输出流中,读多少写多少
        int len;  // 记住每次读取了多少个字节
        while ((len = inputStream.read(buffer)) != -1) {
            outputStream.write(buffer, 0, len);
        }
        outputStream.close();
        inputStream.close();
        System.out.println("Successful!");
    }
}
释放资源
// 方式一 : 手动释放

import java.io.*;

public class Test {
    public static void main(String[] args) {
        InputStream inputStream = null;
        OutputStream outputStream = null;
        try {
            System.out.println(10 / 0);  // 错误代码(测试用)
            // 1. 创建一个字节输入流管道与源文件接通
            inputStream = new FileInputStream("E:/Desktop/photo.jpg");

            // 2. 创建一个字节输出流管道与目标文件接通
            outputStream = new FileOutputStream("E:/Desktop/aaa/photo.jpg");

            // 3. 创建一个字节数组,负责转移字节数据
            byte[] buffer = new byte[1024];  // 1KB

            // 4. 从字节输入流中读取字节数据,写出去到字节输出流中,读多少写多少
            int len;  // 记住每次读取了多少个字节
            while ((len = inputStream.read(buffer)) != -1) {
                outputStream.write(buffer, 0, len);
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        } finally {
            // 释放资源的操作
            try {
                if (outputStream != null) outputStream.close();
                if (inputStream != null) inputStream.close();
                System.out.println("Successful!");
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

    }
}
// 方式二 : 自动释放

import java.io.*;

public class Test {
    public static void main(String[] args) {
        try (
                // 注意: 小括号这里面只能放置资源对象(流对象)

                // 1. 创建一个字节输入流管道与源文件接通
                InputStream inputStream = new FileInputStream("E:/Desktop/photo.jpg");
                // 2. 创建一个字节输出流管道与目标文件接通
                OutputStream outputStream = new FileOutputStream("E:/Desktop/aaa/photo.jpg");

        ) {
//            System.out.println(10 / 0);  // 错误代码(测试用)

            // 3. 创建一个字节数组,负责转移字节数据
            byte[] buffer = new byte[1024];  // 1KB

            // 4. 从字节输入流中读取字节数据,写出去到字节输出流中,读多少写多少
            int len;  // 记住每次读取了多少个字节
            while ((len = inputStream.read(buffer)) != -1) {
                outputStream.write(buffer, 0, len);
            }
            System.out.println("Successful!");
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

    }
}
Rockchip rv1126平台在gstreamer1中添加OpenCv实现视频流负片的效果 rv1126 gstreamer opencv negetive effect 阅读详情

相关推荐

Matlab激活失败?手把手教你解决License checkout failed问题(附详细截图)

本文针对Matlab激活后出现“License checkout failed”错误的常见问题,提供了详细的解决方案。核心在于精准定位并正确填写Windows系统用户名,而非计算机名或账户全名。文章通过分步截图和命令指引,手把手教你使用`whoami`命令获取正确信息,并重新运行激活程序,从根本上解决因用户名填写错误导致的许可检查失败问题。

weixin_29062823的博客 570

2020.8.12Java基础总结21_IO流_字节流

Java基础总结21_IO流 一、IO流概述 1.1 什么是IO ​ Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。 1.2 IO的分类 根据数据的流向分为:输入流和输出流。 输入流:把数据从其他设备上读取到内存中的流。 输出流:把数据从内存中写出到其他设备上的流。 根据数据的类型分为:字节流和字符流。 字节流 :以字节为单位,读写数据的流。 字符流 :以字符为单位,读写数据的流。 1.3 IO流向说明图解 1.4 IO顶级

weixin_42456748的博客 141

边缘计算【智能+安全检测】系列教程--使用OpenCV+GStreamer实现真正的硬解码,完全消除马赛克

通过现有博客的GStreamer的解码方式解码,大多情况应该存在上图马赛克的问题,请勿紧张,其实上述url并没有调用硬件解码,后面有调用硬件解码的ULR,我们来在接下来的介绍中释获。通过RTSP协议连接海康威视摄像头将图片送入AI推理,发现OpenCV的VideoCapture使用的是软解码大量消耗了cpu的资源,并无法做到实时数据处理存在5秒钟的延时。只能把解码这部分送到硬件解码器去处理分摊掉cpu的压力,

Starry-SkyJing的博客 2427

java基础12【File、路径、IO流、装饰者模式、字符流、字节流、转换流、系统流、打印流】

文章目录文件 - FileFile - 知识点路径IO流流中的异常处理字符流缓冲流装饰设计模式StringReader字节流转换流 java基础12 文件 - File 代表文件或者目录(文件夹)的类。 练习:删除目录 思路:写一个单独的方法来删除目录或者文件:判断是一个目录还是还是一个文件;如果是文件(isFile())直接删除(delete()),如果是目录(isDirectory(...

duzhikai的博客 307

Apollo学习笔记(4)坐标系

百度Apollo项目用到了多种坐标系,其中帮助文档提及的坐标系包括: 全球地理坐标系(The Global Geographic coordinate system ) 局部坐标系—东-北-天坐标(The Local Frame – East-North-Up,ENU) 车身坐标系—右-前-天坐标(The Vehicle Frame —Right-Forward-Up,RFU) 车身坐标系—前-左-天坐标(The Vehicle Frame —Front-Left-Up,FLU) 还有一种Frenet坐标

qq_24649627的博客 5798

LTspice基础教程-024.参数扫描;step指令用法

step指令用于参数扫描,扫描步骤可以是线性的,对数的或列表。 下面介绍几种常用用法: 绘制一简单电阻分压电路,如下: 线性扫描 语法:.step param <Name> <Start Value> <Stop Value> <Increment> 例:.step param Res 20 100 20 意思是R2的阻值从20变化到100,...

gaoyong_wang的博客 3万+

JAVA-12-异常、IO流之字节流、编解码

学习IO流之前,先介绍异常,以后我们会经常遇到各种各样的异常,那么遇到异常我们该怎么处理呢? 一:异常 1.1 异常:就是程序出现的不正常的情况。 异常大致分类:   ①错误(Error):这是非常严重的问题,一般我们处理不了,一般在这里指的是硬件问题。   ②异常(Exception):     a.编译时期异常 开始就必须要处理的,如果不处理,后面就走不了。     b.运行

喵喵的博客 513

Python实现飞书机器人定时发送文本、图片等群消息

python实现飞书群自动发送告警消息

tyh_keephunger的博客 2万+

12.IO(一)【IO流概述】【字符流】【字符流缓冲区】【装饰设计模式】【字节流】

一、IO流概述 1.        IO,是InputOutput的缩写。 2.        流,是传递数据信息的载体,是程序中的数据所经历的路径。 3.        流分为输入流和输出流。输入流是将数据从数据源传递给程序。输出流是将数据从程序传递到目标的地方,如硬盘,内存,网络等。 4.        Java语言操作数据就是通过流的方式。 5.        Java中的IO流库

迎着清晨的阳光,踏上梦想的旅程 1155

华为OD机试真题 新系统【小花获胜的奶茶】

华为OD机试真题 新系统【小花获胜的奶茶】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【小花获胜的奶茶】多语言题解。

qq_45776114的博客 382

GraphRAG深度解析:架构设计与实战案例

生成模块结合检索到的图数据和用户输入的查询,生成高质量的文本输出。通过结合图数据库中的知识,模型可以更准确地回答用户的问题,提供更优质的客户服务。通过分析用户的行为和偏好,结合图数据库中的知识,模型可以为用户提供个性化的推荐。:通过图数据库存储和检索结构化的知识,为语言模型提供丰富的背景信息,提升生成内容的质量和准确性。:选择合适的图数据库,如Neo4j、OrientDB等,以支持高效的图数据存储和检索。:利用图数据库的高效检索能力,快速找到与用户查询最相关的图元素,提高系统的响应速度。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1591

新手小白学JAVA IO流 File 字节流 字符流

IO简介 1 流Stream 在学习IO流之前,我们首先需要学习的概念就是Stream流 为了方便理解,我们可以把数据的读写操作抽象成数据在"管道"中流动,但需注意: 1.流只能单方向流动 2.输入流用来读取 → in 3.输出流用来写出 → out 4.数据只能从头到尾顺序的读写一次 所以以程序的角度来思考,In/out 相对于程序而言的输入(读取)/输出(写出)的过程. 2 IO流的继承结构 在java中,根据处理的数据单位不同,可以把流分为字节流和字符流 字节流 : 针对二进制文件 字符流 : 针对

程序媛泡泡的博客 7万+

Open3D KD-tree的使用【2025最新版】

Open3d使用FLANN构建KDTree以便进行快速最近邻检索。博客长期更新,本文最近一次更新时间为:2025年1月1日,代码已同步更新至Open3D 0.18.0版本。

点云侠的博客 40万+

Java基础:IO流之字节流和字符流

一、流的概念流(stream)的概念源于UNIX中管道(pipe)的概念。在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流。用户可以从输入流中读取信息,但不能写它。相反,对输出

JackChan 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

java IO流之字节流

1 IO流相关概念 1.1 什么是IO流? IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 1.2 IO流分类 按流向来分 输入流InpuStream Reader(读取数据) 输出流OutStream Writer(写数据) 按操作类型分 字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的 字符流 : 字...

qq_41587409的博客 1382

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

IO流(字节流、字符流)

1.什么是IO流?存储和读取数据的解决方案l: inputo: output流∶像水流一样传输数据2.IO流的作用?用于读写数据(本地文件,网络)3.IO流按照流向可以分类哪两种流?输出流:程序 - > 文件输入流:文件 - > 程序4.IO流按照操作文件的类型可以分类哪两种流?字节流:可以操作所有类型的文件字符流:只能操作纯文本文件5.什么是纯文本文件?用windows系统自带的记事本打开并且能读懂的文件。

m0_63839619的博客 1243

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

java-IO流字节流

IO流的作用:就是可以对文件或者网络中的数据进行读、写的操作。如下图所示把数据从磁盘、网络中读取到程序中来,用到的是输入流。把程序中的数据写入磁盘、网络中,用到的是输出流。IO流可以分成两大类:1.字节流:字节流又分为字节输入流、字节输出流2.字符流:字符流由分为字符输入流、字符输出流。

qq_69149404的博客 1144

Java的IO流 - 字节流和字符流

在Java中,IO流(Input/Output Stream) 是进行数据输入与输出处理的基础机制,广泛应用于文件读写、网络通信、序列化等场景。IO流体系庞大,但本质可分为两大类:字节流和字符流。本文将围绕这两个核心概念,系统讲解其原理、使用方法和适用场景,帮助读者深入理解Java的IO流机制。

weixin_73144915的博客 1550

IO流之字节流

​ public FileOutputStream(Stringname):创建文件字节输出流,使用字符串指定文件路径,文件不存在,会创建文件,文件存在会清空文件的内容。finally代码区的特点:无论try中的程序是正常执行了,还是出现了异常,最后都一定会执行finally区,除非JVM终止。作用:以内存为基准,可以把磁盘文件中的数据以字节的形式读入到内存中去。作用:以内存为基准,把内存中的数据以字节的形式写出到文件中去。(比如:音频、视频、图片、文本文件的复制,转移等)(可以读写文件,或网络中的数据…

m0_57463864的博客 1105

Java——IO流:字节流

打开文件,其实是在该进程的文件描述符表中,创建了一个新的表项,描述了该进程要执行哪些操作,文件描述表,可以认为是一个数组,数组中的每一个元素就是一个structfile对象(Linux内核),每一个结构体就描述了对应操作的文件信息,数组的下标,就被称为文件描述符。文件拷贝就是把读取和写入结合起来,把读取到的数据再写入另一个文件中,所以也有两种方式进行拷贝,一种是一个字节一个字节的拷贝,另一种就是直接定义一个大容量的数组,一次拷贝完成,很显然,后者更加高效。

2301_81477988的博客 951

IO流、字节流和字符流

JavaOOP一、IO流1.1 概念1.2 分类1.3 IO流的父类二、字节流2.1 概念2.2 OutputStream2.2.1 常用方法2.2.2 FileOutputStream类2.2.2.1 构造方法2.2.2.2 输出字符串到文件2.2.2.3 追加输入字符串2.2.2.4 写出换行2.3 InputStream2.3.1 常用方法2.3.2 FileInputStrean2.3.2.1 构造方法2.3.2.2 读取文件所有内容并输出至控制台2.3.2.3 文件复制三、字符流3.1 概念3.2

璃尔 ° 的博客 1549

Java IO流(字节流和字符流)

IO流是Java中用于处理输入输出操作的抽象概念。可以将流想象成一条"数据管道",数据从一个源(如文件、网络连接)通过这条管道流向目标位置。:输入流(InputStream/Reader)只能读数据,输出流(OutputStream/Writer)只能写数据。:数据按顺序传输,不能随机访问(除非使用随机读写流)。:通过缓冲区(字节数组)减少 I/O 次数,提高读写性能(类比 “用瓢舀米比一粒粒拿起米更快”)。

m0_74230209的博客 1595

Java_IO流(字节流)

在前面已经学习过File类。知道File只能操作文件,但是不能操作文件中的内容。我们也学习了字符集,不同的字符集存字符数据的原理是不一样的。有了前面两个知识的基础,接下来我们再学习IO流,就可以对文件中的数据进行操作了。IO流的作用:就是可以对文件或者网络中的数据进行读、写的操作。如下图所示把数据从磁盘、网络中读取到程序中来,用到的是输入流。把程序中的数据写入磁盘、网络中,用到的是输出流。简单记:输入流(读数据)、输出流(写数据)IO流在Java中有很多种,不同的流来干不同的事情。

qq_48083892的博客 1327

Java中IO流(字节流)

I表示intput,是数据从硬盘进内存的过程,称之为读。O表示output,是数据从内存到硬盘的过程,称之为写。流是指一连串流动的字符,是以先进先出方式发送信息的通道。

weixin_73656077的博客 1288

Java IO流基础:IO流 文件 字符流 字节流 处理流等...

Java IO流的四个抽象基类如下,Java IO流都是从这四个基类派生出的,由这四个类派生出的子类名称都是以其父类名称作为子类名后缀,例如:FileInputStream就是字节输入流,FileWrite就是字符输出流。,在序列化时,会将对象的serialVersionUID写入到字节序列中,反序列化时会检查接收方对象的serialVersionUID是否与序列化时写入的一致,如果一致则反序列化成功,不一致则报错。,也可以提供更方便的方法来完成输入输出,此外,处理流不会与数据源直接接触。

IH_LZH的博客 1303

Java IO流之字节流【一】

1.IO 概述 生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了 ctrl+s ,可能文件就白白编辑了。 当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是存储在哪些设备呢?内存、硬盘、外接设备(移动硬盘,U盘)等等。 数据的传输可以看做是数据的流动,按照流动的方向,以内存为基准,分为输入流input 和输出流output ,即流向内存是输入流,流出内存的输出流。 Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。 输入也叫做读取数据,输出也叫

会者定离,一期一祈 1901
上一篇: 11_File
下一篇: 13_IO流_字符流
code_stream
博客等级 码龄4年 1238粉丝 169原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值