Java 的 InputStream
和 OutputSteam
都是抽象类,用于访问底层数据集。它们是定义特定数据序列操作的 API,通过一系列步骤实现。InputStream
将数据集重新排列为有序的字节流,从文件或网络读取数据。流结束时返回 -1(Java 没有无符号字节数据类型)。OutputStream
则接收输出字节并将它们写入目标。它是最基本的写入单个字节的输出方法。本文将比较这两个流的差异,并结合实际应用进行说明。
输入示例
FileOutputStream fileOut = new FileOutputStream("ARBRDD.txt");
输出示例
<code>file is successfully updated today!!</code>
InputStream
和 OutputStream
的区别
特性 |
|
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
数据读取/写入 | 使用 read() 、read(byte[]) 、read(byte[], int, int) 读取数据 |
使用 write(int) 、write(byte[]) 、write(byte[], int, int) 写入数据 |
|||||||||||||||
数据流向 | 数据从源流向应用程序 | 数据从应用程序流向目标 | |||||||||||||||
数据类型 | 可读取字节 | 可写入字节、字符或对象(使用子类) | |||||||||||||||
数据连接 | 可使用 FileInputStream 或 ByteArrayInputStream 连接现有数据 |
可使用 FileOutputStream 或 ByteArrayOutputStream 连接现有数据 |
使用方法
使用 FileInputStream
和 FileOutputStream
函数。
算法
该算法描述了流类的工作流程。首先声明并设置插入顺序(例如使用计时器类)。然后通过迭代长度遍历来评估输入结果。
- 步骤 1 - 开始流程。
- 步骤 2 - 声明输入输出流。
- 步骤 3 - 导入内置类和声明的函数。
- 步骤 4 - 声明一个公共类。
- 步骤 5 - 设置函数。
- 步骤 6 - 执行插入操作。
- 步骤 7 - 声明一个数组列表并填充它。
- 步骤 8 - 声明集合值。
- 步骤 9 - 按插入顺序打印值。
- 步骤 10 - 声明一个循环来迭代流程。
- 步骤 11 - 设置计时器值。
- 步骤 12 - 运行流程并获取输出值。
- 步骤 13 - 终止流程。
语法
语法说明如何声明一个流程为 null 以标记和跳过布尔流程。之后,我们将通过强制使用异常类来重置流程以跟踪堆栈值。
FileOutputStream fileOut = new FileOutputStream("ARBRDD.txt");
使用 FileInputStream
和 FileOutputStream
方法
此方法使用 FileInputStream
和 FileOutputStream
方法对集合执行流式处理。
示例
此代码使用文本文件,通过 Java 流函数将字符串写入其中。此过程中声明了一个 catch 块来处理异常。
<code>file is successfully updated today!!</code>
输出
public class NewClass { public static void main(String[] args) throws Exception { InputStream processARBRDD = null; try { processARBRDD = new FileInputStream("FILE_NAME.txt"); // PRINT METHOD processARBRDD.mark(0); processARBRDD.skip(1); // PRINT METHOD boolean check = processARBRDD.markSupported(); if (processARBRDD.markSupported()) { processARBRDD.reset(); // PRINT METHODS } else { // PRINT METHODS } } catch (Exception excpt) { excpt.printStackTrace(); } finally { if (processARBRDD != null) { processARBRDD.close(); } } } }
结论
ByteArray
流用于将数据写入字节数组。在本主题中,我们使用了不同的流函数来建立数据和代码之间的连接。
以上是java中的输入流和outputstream之间的差异的详细内容。更多信息请关注PHP中文网其他相关文章!

在使用IntelliJIDEAUltimate版本启动Spring...

在使用MyBatis-Plus或其他ORM框架进行数据库操作时,经常需要根据实体类的属性名构造查询条件。如果每次都手动...

Redis缓存方案如何实现产品排行榜列表的需求?在开发过程中,我们常常需要处理排行榜的需求,例如展示一个�...

将姓名转换为数字以实现排序的解决方案在许多应用场景中,用户可能需要在群组中进行排序,尤其是在一个用...

电商平台SKU和SPU表设计详解本文将探讨电商平台中SKU和SPU的数据库设计问题,特别是如何处理用户自定义销售属...

在Idea中如何设置SpringBoot项目默认运行配置列表在使用IntelliJ...


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

SublimeText3 Linux新版
SublimeText3 Linux最新版

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

禅工作室 13.0.1
功能强大的PHP集成开发环境

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。