第十五章 I/O输入输出

15,1输入输出流
流是一组有序的数据序列,根据操作的类型,可分为输入流和输出流两种。I/O(Input/Output,(输出)流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。虽然 I/O 流疆盘文件存取有关,但是程序的源和目的地也可以是键盘、鼠标、内存或显示器窗口等。

Jaa 语言定义了许多类专门负责各种方式的输入/输出,这些类都被放在java.io 包中。其中输入流

类都是抽象类input stream(字节输入流)或抽象reader(字符输入流)的子类;而所有输出流都是抽象类output stream(字节输出流)或抽象类writer(字符输出流)的子类。

15.1.1输入流
ImputStream 类是字书输入流的抽象类,它是所有字节输入流的父类。

该类中所有方法遇到错误时都会引发IOException 异常。下面是对该类中的一些方法的简要说明区: read0方法:从输入流中读取数据的下一个字节。返回025的 int 字节值。如果因为已经达流末尾而没有可用的字节,则返回值为-1。
read(bytell b):从输入流中读入一定长度的字节,并以整数的形式返回字节数。
mark(int readlimi)方法:在输入流的当前位置放置一个标记readlimit 参数告知此输入流在标记位置失效之前允许读取的字节数。reset0方法:将输入指针返回到当前所做的标记处。sipong )方法:跳过输入流上的 个字节并返回实际跳过的字节数

makSupported()方法:如果当前流支持 mark0/reset0操作就返回 true

close方法:关闭此输入流并释放与该流关联的所有系统资源。

Java中的字符是 Unicode 编码,是双字节的。InputStream 类是用来处理字节的,并不适合处理字文本Java为字符文本的输入专门提供了一套单独的类,即 Reader 类,但 Reader 类并不是 InputStream的替换者,只是在处理字符串时简化了编程。Reader 类是字符输入流的抽象类,所有字符输入流的变现都是它的子类

Reader类中的方法与InputStream类中的方法类似,读者在需要时可查看JDK文档

15.1.2输出流

OutputStream 类是字节输出流的抽象类,此抽象类是表示输出字节流的所有类的超类

OutputStream 类中的所有方法均返回 void,在遇wrte(intb)方法:将指定的宇节写入此输出流。回 wrle(byteDb)方法:将b个字节从指定的 byte 数组写入此输出流。

wrle(byteDb)方法:将b个字节从指定的 byte 数组写入此输出流。
writer(byte[]b,int off,int len)方法:将指定byte数组中从偏移量off开始的len个字节写入此输出流
fush0方法:彻底完成输出并清空缓存区

close()方法:关闭输出流

writer类是字符输出流的抽象类,所有字符输出类的实现都是它的子类。

15.2 File类
File 类是javaio 包中唯一代表磁盘文件本身的类。File 类定义了一些与平台无关的方法来操作件,可以通过调用 File 类中的方法,实现创建、删除、重命名文件等操作。File 类的对象主要用来取文件本身的一些信息,如文件所在的目录、文件的长度、文件读写权限等。数据流可以将数据写入文件中,文件也是数据流最常用的数据媒体。

15.21 文件的创建与删除
1.File(String pathname)

15,2

15,3

15.4

15.5

15.6

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/165293.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

毅速科普课堂丨3D打印随形水路模具制造的一般流程

随形水路模具因其能大幅度提升冷却效率、缩短冷却时间、提升产品良率、提高生产效率的特点受到广泛应用,通常一件3D打印随形水路模具的制造需要经过多个步骤,包括设计、打印、后处理等多个环节,以确保模具的质量和性能符合预期需求。 首先&am…

搭建哨兵架构(windows)

参考文章:Windows CMD常用命令大全(值得收藏)_cmd命令-CSDN博客 搭建哨兵架构:redis-server.exe sentinel.conf --sentinel 1.在主节点上创建哨兵配置 - 在Master对应redis.conf同目录下新建sentinel.conf文件,名字绝…

PAM从入门到精通(十七)

接前一篇文章:PAM从入门到精通(十六) 本文参考: 《The Linux-PAM Application Developers Guide》 PAM 的应用开发和内部实现源码分析 先再来重温一下PAM系统架构: 更加形象的形式: 六、整体流程示例 2.…

【FPGA零基础学习之旅#15】串口接收模块设计与验证(工业环境)

🎉欢迎来到FPGA专栏~串口接收模块设计与验证(工业环境) ☆* o(≧▽≦)o *☆嗨~我是小夏与酒🍹 ✨博客主页:小夏与酒的博客 🎈该系列文章专栏:FPGA学习之旅 文章作者技术和水平有限,如…

[云原生1] Docker网络模式的详细介绍

1. Docker 网络 1.1 Docker 网络实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0), Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP, 同时Docker网桥是每个容器的默认…

Python 框架学习 Django篇 (五) Session与Token认证

我们前面经过数据库的学习已经基本了解了怎么接受前端发过来的请求,并处理后返回数据实现了一个基本的登录登出效果,但是存在一个问题,我们是将所有的请求都直接处理了,并没有去检查是否为已经登录的管理员发送的,如果…

代码随想录算法训练营第二十九天丨 回溯算法part06

回溯总结 对于回溯算法,我们需要知道的是 回溯是递归的副产品,只要有递归就会有回溯,所有回溯法常与二叉树遍历【前中后序遍历】,深搜混在一起,原因是都涉及到的递归。 回溯法 暴力搜索,它的效率并不高&…

从北京到南京:偶数在能源行业的数据迁移实践

能源行业的数字化转型 当前,大数据技术在以电力为代表的能源行业不断推进,同时,分布式能源、储能、电网技术不断改进,电力行业的数字化转型充满了机遇和挑战。 一方面,电力行业本身自动化程度高、信息化基础好、系统…

文件夹图片相似图片检测并删除相似图片

项目开源地址 pip install imagededupgit clone https://github.com/idealo/imagededup.git cd imagededup pip install "cython>0.29" python setup.py installQuick Start from imagededup.methods import PHash phasher PHash()# Generate encodings for all…

macOS Tor 在启动期间退出

macos Tor 在启动期间退出。这可能是您的 torrc 文件存在错误,或者 Tor 或您的系统中的其他程序存在问题,或者硬件问题。在您解决此问题并重新启动 Tor 前,Tor 浏览器将不会启动。退出Tor、卸载Tor、删除目录 TorBrowser-Data、重启电脑 访…

系统设计 - 我们如何通俗的理解那些技术的运行原理 - 第二部分:CI CD、设计模式、数据库

本心、输入输出、结果 文章目录 系统设计 - 我们如何通俗的理解那些技术的运行原理 - 第二部分:CI CD、设计模式、数据库前言CI/CD第 1 部分 - 带有 CI/CD 的 SDLC第 2 部分 - CI 和 CD 之间的区别第 3 部分 - CI/CD 管道 Netflix Tech Stack (CI/CD Pip…

在模拟冷藏牛肉加工条件下,冷和酸对荧光假单胞菌和单核细胞增生李斯特菌双菌种生物膜的综合影响

1.1 Title:Combined effects of cold and acid on dual-species biofilms of Pseudomonas fluorescens and Listeria monocytogenes under simulated chilled beef processing conditions 1.2 分区/影响因子:Q1/5.3 1.3 作者:Zhou Guanghui…

哪个牌子的台灯对孩子的视力好?对孩子视力好的台灯推荐分享

现在市面上台灯品牌众多,价格不一,品质更是参差不齐,所以要学会如何选择适合孩子的台灯。光源质量是重要因素,光源是直接影响到孩子的视力, 一般来说,光源质量主要看照度、亮度和均匀度、显色指数等&#x…

大语言模型在推荐系统的实践应用

本文从应用视角出发,尝试把大语言模型中的一些长处放在推荐系统中。 01 背景和问题 传统的推荐模型网络参数效果较小(不包括embedding参数),训练和推理的时间、空间开销较小,也能充分利用用户-物品的协同信号。但是它的缺陷是只能利用数据…

softplc windows 安装测试

下载 .NET 6.0 (Linux、macOS 和 Windows) 安装后 在这里 The command could not be loaded, possibly because: * You intended to execute a .NET application: The application restore does not exist. * You intended to execute a .NET SDK command: No…

海外版知乎Quora,如何使用Quora进行营销?

想必大家对知乎非常熟悉,而Quora作为海外最受欢迎的网站之一,是与知乎功能与性质非常相似的一个平台,靠回答别人的问题获得关注,是引流最快的一个平台。对于做跨境电商、独立站的商家来说,这是一个绝佳的免费引流广告工…

小程序canvas层级过高真机遮挡组件的解决办法

文章目录 问题发现真机调试问题分析问题解决改造代码效果展示 问题发现 在小程序开发中需要上传图片进行裁剪&#xff0c;在实际真机调试中发现canvas层遮挡住了生成图片的按钮。 问题代码 <import src"../we-cropper/we-cropper.wxml"></import> <…

2023.10.19 关于 单例模式 详解

目录 引言 单例模式 饿汉模式 懒汉模式 懒汉模式线程安全问题 分析原因 引言 设计模式为编写代码的 约定 和 规范 阅读下面文章前建议点击下方链接明白 对象 和 类对象 对象和类对象 单例模式 单个实例&#xff08;对象&#xff09;在某些场景中有特定的类&#xff0c;…

IntelliJ IDEA 2020.2.1白票安装使用方法

先安装好idear Plugins 内手动添加第三方插件仓库地址&#xff1a;https://plugins.zhile.io 搜索&#xff1a;IDE Eval Reset插件进行安装 输入https://plugins.zhile.io 手动安装离线插件方法 安装包可以去笔者的CSDN资源库下载 安装mybaties插件

Java版ORM最初雏形

经过一个晚上的加班&#xff0c;终于把ORM初步结构工程搭好了。工程依赖有点难用&#xff0c;编辑器提示比VS差很多。 首先LIS.Core创建一个最初的容器雏形&#xff0c;先能反射得到对象给ORM获得数据库驱动 然后ORM创建数据库驱动差异接口&#xff0c;不同数据库实现接口后配…