Java IO流

SEW MDX61B 变频器调试说明 可手动自由更改时间和地址,时间一般不更改,IP地址使用网络适配器地址(Network adapter),点击进入即可。进入网络适配器(Network adapter)后,选择适配器建议地址,点击OK,更改IP地址后点击OK。点击加载配置文件(Load a configuration),加载已保存的应用模块配置文件, 或者点击“next”,开始重新配置AMA0801模块。满足安全回路后,控制模式选为寻参模式(Reference mode),选中开始(start),即可将机械零点设置为电气零点。 阅读详情

File

概况

在这里插入图片描述

使用

  • File类的一个对象,代表一个文件或一个文件目录(文件夹)

  • File类声明在java.io包下。

  • File类中涉及到关于文件或文件目录的创建,删除,重命名,修改时间,文件大小等方法,并未涉及到写入或读取文件内容的操作,如果需要读取或写入文件内容,必须使用IO流来完成。

  • 后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的“终点”。

  • 创建File类的实例

    • File(String filePath)
    • File(String parentPath, String childPath)
    • File(File parentFile, String childPath)
  • 路径

    • 相对路径:相较于某个路径下,指明的路径。
    • 绝对路径:包含盘符在内的文件或文件目录的路径。
  • 路径分隔符

    • windows:\\
    • unix:/

常用方法

在这里插入图片描述
在这里插入图片描述

IO流

原理

在这里插入图片描述

分类

在这里插入图片描述
在这里插入图片描述

体系结构

  • 抽象基类
    • InputStream
    • OutputStream
    • Reader
    • Writer
  • 节点流(文件流)
    • FileInputStream(read (byte[] buffer))
    • FileOutputStream(write (byte[] buffer, 0, len))
    • FileReader(read (char[] cbuf))
    • FileWriter(write (char[] cbuf, 0, len))
  • 缓冲流(处理流的一种)
    • BufferedInputStream(read (byte[] buffer))
    • BufferedOutputStream(write (byte[] buffer, 0, len) / flush())
    • BufferedReader(read (char[] cbuf) / readLine())
    • BufferedWriter(write (char[] cbuf, 0, len) / flush())

节点流(文件流)

  • read()的理解:返回读入的一个字符,如果达到文件末尾,返回-1。

  • 异常的处理:为了保证流资源一定可以执行关闭操作,需要使用try-catch-finally处理。

  • 读入的文件一定要存在,否则会报FileNotFoundException。

  • 使用read()的重载方法

    • File类的实例化
    • FileReader流的实例化
    • 读入的操作
    • 资源的关闭
  • 从内存中写出数据到硬盘的文件里

    • 步骤

      • 提供File类的对象,指明写出的文件
      • 提供FileWriter的对象,用于数据的写出
      • 写出的操作
      • 流资源的关闭
    • 输出操作,对应的File可以不存在,并不会报异常。

    • File对应的硬盘中的文件如果不存在,在输出的过程中,会自动创建此文件。

    • File对应的硬盘中的文件如果存在

      • 如果流使用的构造器是:FileWriter(file, false) / FileWriter(file):对原有文件的覆盖。
      • 如果流使用的构造器是:FileWriter(file, true):不会对原文件进行覆盖,而是增加内容。
  • 不能使用字符流来处理图片等字节数据。

  • 对于文本文件(.txt,.java,.c,.cpp),使用字符流处理。对于非文本文件(.jpg,.mp3,.mp4,.avi,.doc,.ppt…),使用字节流处理。

缓冲流

  • 作用:提高流的读取,写入的速度。提高读写速度的原因:内部提供了一个缓冲区。
  • 造流先造内层再造外层,关流先关外层再关内层。(关闭外层流的同时,内层流也会自动的进行关闭。关于内层流的关闭,我们可以省略)
  • 处理流:“套装”在已有的流的基础上。

转换流

作用:提供字节流与字符流之间的转换
在这里插入图片描述

  • InputStreamReader:将一个字节的输入流转换为字符的输入流

  • OutputStreamWriter:将一个字符的输出流转换成字节的输出流

  • 编码:字符数组,字符串 ——> 字节,字节数组

  • 解码:字节,字节数组 ——> 字符数组,字符串

  • 具体使用哪个字符集,取决于文件dbcp.txt保存时使用的字符集。

  • 字符集
    在这里插入图片描述

标准输入,输出流

在这里插入图片描述

  • System.in:标准的输入流,默认从键盘输入
  • System.out:标准的输出流,默认从控制台输出
  • System类的setIn(InputStream is) / setOut(PrintStream ps)方式重新指定输入和输出的流。

打印流

在这里插入图片描述

数据流

在这里插入图片描述

  • 作用:用于读取或写出基本数据类型的变量或字符串
  • 处理异常的话,仍然使用try-catch-finally
  • 读取不同类型的数据的顺序要与当初写入文件时,保存的数据的顺序一致。

对象流

在这里插入图片描述

  • 举例:Person需要 满足如下要求,方可序列化
    • 需要实现接口:Serializable
    • 当前类提供一个全局常量:serialVersionUID
    • 除了当前Person类需要实现Seriallizable接口以外,还必须保证其内部所有属性也必须是可序列化的(默认情况下,基本数据类型可序列化)

随机存取文件流

在这里插入图片描述

  • RandomAccessFile直接继承于java.lang.Object类,实现了DataInput和DataOutput接口,既可以作为一个输入流,也可以作为输出流。
    在这里插入图片描述
  • 如果RandomAccessFile作为输出流时,写出到的文件如果不存在,则在执行过程中自动创建。如果写出到的文件存在,则会对原有文件内容进行覆盖。(默认情况下,从头覆盖)
    在这里插入图片描述
addr2line解析不出来行号的解决方式(汇编解析高阶版) 摘要:本文针对AEC crash问题中addr2line无法解析行号的情况,通过llvm-addr2line和反汇编分析,定位到CamX::AECBEStats17::AdjustROIParams函数中的乘法溢出问题。关键发现包括: 常规addr2line只能解析到函数名但无具体行号 llvm-addr2line解析出多个可能溢出点(行196/204/211/218/270/271) 反汇编显示6个条件分支跳转到溢出处理函数 源码分析确认这些位置均存在乘法运算 最终通过汇编级调试工具成功定位UBsan报告 阅读详情

相关推荐

AI智能体安全沙箱agentguard:为LLM代码执行筑起防火墙

在AI应用开发领域,大语言模型(LLM)驱动的智能体(Agent)能够自动生成并执行代码,极大地提升了自动化能力。然而,赋予AI直接执行系统命令的权限也带来了显著的安全风险,如恶意代码注入、敏感数据泄露和系统资源滥用。为了解决这一核心矛盾,安全沙箱技术应运而生,它通过在不可信代码与宿主系统之间建立隔离层,实现"默认拒绝、最小权限"的安全原则。agentguard项目正是这一理念的工程实践,它结合白名单机制与容器化隔离,为AI智能体提供了可配置、可审计的安全执行环境。该方案不仅适用于内部自动化工具开发,也为构

weixin_28695537的博客 297

Java IO流详解

原文 Java IO流详解 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。 IO又分为流IO(java.io)和块IO(java.nio) Java.io是大多数面向数据流的输入/输出类的主要软件包。此外,Java也对块传输提供支持,在核心库 java.nio中采用的

ss810540895的博客 1万+

PADS VX2.4差分对设置避坑指南:常见错误与解决方案

本文深度解析了在PADS VX2.4中进行高速PCB设计时,差分对设置的核心要点与常见陷阱。针对Layout规则设置、Router布线实战中的阻抗控制、线长匹配等关键环节,提供了具体的避坑指南和解决方案,帮助工程师确保信号完整性,提升设计质量。

weixin_29216049的博客 360

【Java IO流】IO流详解

IO,即InputOutput,也就是输入和输出,指应用程序和外部设备之间的数据传递,常见的外部设备包括磁盘文件、管道、网络连接Java中是通过流处理IO的,那么什么是流?流(Stream),是一个抽象的概念,是指一连串的数据(字符或字节),是以先进先出的方式发送信息的通道当Java程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是磁盘文件、内存、网络连接等等。类似地,当Java程序需要写入数据的时候,就会开启一个通向目的地的流。

m0_55908255的博客 1695

输入文件(Example-1.inp)参数解读与获取方法

弹性参数:优先使用默认值(泊松比 0.25、杨氏模量 8×10⁵ bars),或参考区域地质 / 地球物理研究。断层参数:从地震矩反演、GPS 位移反演、地质图 / 震源机制获取(核心参数,需确保准确性)。网格 / 图形参数:根据研究区范围和输出需求调整(步长 / 放大系数等)。

2301_79258000的博客 81

27、自闭症儿童治疗与玩具设计研究

本研究探讨了自闭症儿童的治疗方法与玩具设计之间的关联,分析了游戏疗法、音乐疗法和职业疗法等在治疗中的应用,并介绍了多种针对自闭症儿童的治疗玩具案例。通过用户研究和多学科合作,提出了以Pro-Ability为核心的设计理念,开发了结合音乐疗法和精细运动训练的智能玩具套件。研究总结了当前成果与局限性,并展望了未来发展方向,旨在为自闭症儿童提供更有效的康复支持。

keras9composer的博客 211

Java IO流知识点总结

I(Input)O(Output) 通过IO可以处理程序与外部环境之间的数据传输。

weixin_43836337的博客 1869

为什么一个“时间片”能折腾 Linux 十年?

时间片扩展不是抢占调度器的控制权,也不是提升优先级。在“非常短暂、非常确定”的用户态临界区内,避免线程被不必要地抢占。用户态自旋锁(user-space spinlock)无系统调用的极短临界区高并发、低延迟的数据结构操作RSEQ(Restartable Sequences)保护区间一旦线程在临界区被抢占,系统整体性能反而下降。线程 A 拿着一个用户态锁线程 B 被调度上来,开始自旋等这个锁但 A 因为时间片用完,被调度器切走CPU 白白空转,所有线程都在浪费时间。

网络技术联盟站 255

Java IO流之IO流基础

IO流介绍 IO基础之File类 IO流之字符流 IO流之字节流 IO流之Scanner类

Mr.mooye 2848

2025年5月架构设计师论文真题回顾,附写作技巧、所涉知识点及参考范文(三)

本文主要回顾2025年上半年(2025-5-24)系统架构设计师考试下午论文的题目,同时附带写作技巧、所涉知识点及参考范文。试题三:多模型数据库及应用。

一几文的编程学习笔记。 631

【OpenClaw从入门到精通】命令行操作指南——TUI模式高效管理OpenClaw(2026避坑版)

本文将详细介绍OpenClaw的命令行操作,重点介绍TUI(Text User Interface)模式的高效使用方法,以及在实际使用中需要避免的常见陷阱。通过本文的学习,你将掌握OpenClaw命令行的精髓,提升工作效率。

一键难忘的博客 1693

Java——IO流

存储和读取数据的解决方案IO流和File是息息相关的。

pangyaqi的博客 1707

一文吃透 Tools for Applying SAP Notes:从 SNOTE、TCI 到 Solution Manager 与 SAP Cloud ALM

本文系统梳理了SAP技术与运维团队应用SAP Notes的高效工具与方法,涵盖On-Premise与云环境。文章首先阐述了精研SAP Notes工具的必要性,指出其是实施错误修复、法务变更和性能改进的关键载体。随后详细介绍了SNOTE、TCI、Solution Manager、Cloud ALM和Maintenance Planner等核心工具的定位与适用场景,并通过采购异常案例展示了标准更正流程。针对复杂修复场景,文章提出了TCI的批量处理方案,并强调将Note实施纳入变更治理流程的重要性。最后总结了三种

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 354

java IO流学习总结

学习了几天的java IO流,下面我来谈谈对java 输入输出流IO的个人见解吧! 转载自:https://blog.youkuaiyun.com/zhaoyanjun6/article/details/54292148/ java流类结构图 一.流的概念: 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。它的特性是进行数据传输; 例如从水源地长江把水导入自来水厂,然后又从自...

coder150806的博客 5万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Java的File与IO流

File类位于java.io包下,是文件和目录路径名的抽象表示,提供了一系列对文件和文件夹本身操作的方法,它不能读写数据。read(字节数组)一次性读取多个字节,注意要判断实际读取的字节到底有多少,以免错误地读取字节数组之前遗留的数据。默认缓冲池大小为8KB。注意:File类是路径名的抽象表示,构建一个File实例并不会创建一个文件,不管文件是否存在,都可以创建任意文件名的File实例。[] listFiles() 一级文件对象数组,包含隐藏文件,无权限访问则为null,主调为文件也为null。

m0_73077892的博客 1829

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

java中的IO流

如果new的File对象所表示的文件或目录并不存在,那么并不会应位new了一个File对象,操作系统就在对应的路径下创建所对应的文件和目录,它仅仅是在JVM的堆中new了一个File对象而已。java为了避免这种类型安全性问题的发生,使序列化接口类在每次编译时,自动生成一个序列化版本ID,用以区别不同的版本,当序列化和反序列化的版本不一致时,就会失败,抛出异常。然而,有些修改并不影响对象的反序列化,如类中加入了新的实例变量,而序列化的数据中并没有新实例变量的值,那么它在反序列化的过程中可以使默认值。

冲出仁川,走出马德里,故事还会再继续 2527

java基础——IO流

是字节输入流,用于从文件中读取字节数据。int data;= -1) {

2403_87486006的博客 796

java io流不关闭有什么后果_Java IO流

一、基本概念 IO是Java对数据的操作是通过流的方式,数据传输是需要通道的,而IO流就是数据传输的通道。IO流可以形象的比喻为运送货物的传输带。IO流用来处理设备之间的数据传输,上传文件和下载文件,Java用于操作流的对象都在IO包中。总结一下,Java IO输入机制就是为了允许程序读取外部数据(包括来自于磁盘、光盘等存储设备的数据)和用户输入的数据。 Java的IO流通过java...

weixin_39563827的博客 2326

IO流【Java】

IO流的系统学习笔记

amazing2024的博客 1163

java io流_Java——IO流超详细总结

该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架。在初学Java时,IO流是我遇到的一个很头疼的东西,Java IO 体系看起来类很多,感觉很复杂,但其实是 IO 涉及的因素太多了。在设计 IO 相关的类时,编写者也不是从同一个方面考虑的,所以会给人一种很乱的感觉,并且还...

weixin_39838362的博客 2163

Java-IO流基础

当程序需要读取数据源的数据时,就会通过IO流对象开启一个通向数据源的流,通过这个IO流对象的相关方法可以顺序读取数据源中的数据。IO流相当于一个管道。

2402_88479893的博客 1106

Java中IO流常见的几种流

序列流 序列流合并文件 package com.cloud.day5; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.SequenceInputStream;

午-夜 1万+

java io流

java IO流 什么是IO流 io是input/output的简称。在我们大学学习计算原理的时候,我们知道计算的组成: 输入设备,输出设备,存储器(内存,外存),运算器,控制器。 程序 = 数据结构 + 算法 ; 程序需要处理能够读取输入的数据,并且经过程序处理之后需要输出到存储器进行持久化。 java对输入输出进行了封装,给我们提供了一系列的api,使我们脱离于对最底层硬件的操...

勿在浮沙筑高台 1万+

Java之IO流

文章目录1、File1.1、File概述和构造方法1.2、File类创建功能1.3、File类判断和获取功能2、字节流3、字符流4、特殊操作流 1、File 1.1、File概述和构造方法 File:它是文件和目录路径名的抽象表示。 文件和目录是可以通过File封装成对象的。 对于File而言,其封装的并不是一个真正存大的文件,仅仅是一个路径名。它可以是存在的,也可以是不存在的。 方法名 说明 File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新

809
上一篇: 数据结构知识点
下一篇: Java 网络编程
ZoeLandia
博客等级 码龄6年 734粉丝 183原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值