12月17日

今天主要学习了Java中的输入输出(I/O)系统,这是Java编程中用于处理数据输入和输出的核心机制。I/O系统提供了丰富的类和接口,用于读取和写入文件、网络数据等,是实现程序与外部世界交互的重要工具。
Java I/O 框架主要分为两个部分:字节流(Byte Streams)和字符流(Character Streams)。

字节流:用于处理二进制数据,如文件、网络数据等。字节流的基类是InputStream和OutputStream。InputStream用于读取字节数据,OutputStream用于写入字节数据。常见的字节流类包括FileInputStream、FileOutputStream、BufferedInputStream、BufferedOutputStream等。
字符流:用于处理字符数据,如文本文件等。字符流的基类是Reader和Writer。Reader用于读取字符数据,Writer用于写入字符数据。常见的字符流类包括FileReader、FileWriter、BufferedReader、BufferedWriter等。
文件读取(FileInputStream)
FileInputStream用于从文件中读取字节数据。例如,读取一个文本文件:

java
import java.io.FileInputStream;
import java.io.IOException;

public class FileInputStreamExample {
public static void main(String[] args) {
try (FileInputStream fis = new FileInputStream("example.txt")) {
int data;
while ((data = fis.read()) != -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个例子中,使用FileInputStream读取文件example.txt中的字节数据,并将其转换为字符输出。
文件写入(FileOutputStream)
FileOutputStream用于向文件中写入字节数据。例如,向一个文件写入文本数据:

java
import java.io.FileOutputStream;
import java.io.IOException;

public class FileOutputStreamExample {
public static void main(String[] args) {
try (FileOutputStream fos = new FileOutputStream("example.txt")) {
String content = "Hello, World!";
fos.write(content.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个例子中,使用FileOutputStream将字符串"Hello, World!"写入文件example.txt中。

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

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

相关文章

WPF 怎么利用behavior优雅的给一个Datagrid添加一个全选的功能

前言:我在迁移旧项目代码的时候发现别人写很多界面都涉及到一个DataGrid的全选,但是每个都写的很混乱,现在刚好空闲下来,写一个博客, 给部分可能不太会写这个的同学讲一下,怎么实现全选功能,并且可以在任何项目里面复用这个功能。 先准备一个Datagrid,我们给这个DataGr…

使用chai3d-GEL模块进行软体模型力反馈仿真的一点碎片化记录

在要模拟的网格模型中手动添加节点或者对于形状比较复杂的模型使用TetGen之类的网格划分程序自动添加节点和连接;然后设置合理的仿真参数(质量、刚度、重力、时间步长...) 骨架驱动:SkeletonModel 使用骨架结构来表示变形体。骨架由一系列节点(cGELSkeletonNode)和连接这…

销售新手必看:七大关键要素助你快速蜕变行业精英

在销售领域的探索之路上,我时常遇到新入行的同仁们询问如何迅速提升自我。回望自己初涉销售的时光,那段没有专业背景支撑,也缺乏资深前辈指引的日子,我选择了最质朴的方式——埋首于书店中,搜寻销售相关的书籍。然而,那些偏重理论研究的书籍,并未给予我太多实战中的助力…

电机控制的数字化升级:基于DSP和FPGA的仿真与实现

​数字信号处理器(DSP,Digital Signal Processor)在工业自动化领域的应用日益广泛。DSP是一种专门用于将模拟信号转换成数字信号并进行处理的技术,能够实现信号的数字滤波、重构、调制和解调等多项功能,确保信号处理的精确性和稳定性。特别是在电机控制系统中,DSP的应用尤…

中考英语优秀范文-热点话题-传统文化-001 Chinese Treasures: Opera Paper Art 国宝探秘:京剧与剪纸

1 写作要求 坚定文化自信,弘扬中华优秀传统文化,做中华文明的传播者是新时代中国青少年的责任与使命。假如你是李华,近期,一批外国朋友要到你所在的学校参观访问,请用英语写一篇发言稿,向他们介绍中华优秀传统文化。 内容包括: 1 欢迎朋友们的到来; 2 总体介绍中国传统…

货梯载人监控报警自动停梯系统

货梯载人监控报警自动停梯系统利用安装在货梯轿厢内的监控摄像头,实时捕捉轿厢内的画面信息,货梯载人监控报警自动停梯系统一旦确认有人员进入货梯轿厢监测范围内,系统便会迅速输出报警信号。同时,与电梯控制系统实现联动,强制电梯不关门、不运行,从而将人员拒之于危险之…

【YashanDB知识库】使用DBeaver 插入数据 nvarchar字段插入为空

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7901516.html?templateId=1718516 【问题分类】DBeaver使用 【关键字】DBeaver、nvarchar 【问题描述】使用DBeaver ,插入数据nvarchar字段插入为空。其他字段都有数据,且插入没有报错。【问题原…

[.NET] 使用客户端缓存提高API性能

在现代应用程序中,性能始终是一个关键的考虑因素。无论是提高响应速度,降低延迟,还是减轻服务器负载,开发者都在寻找各种方法来优化他们的API。在Web开发中,利用客户端缓存是一种有效的方法,可以显著提高API的性能。本文将结合Replicant与Delta库,深入探讨如何在.NET中使…

ABB机器人IO板DSQC651维修检查方法

ABB机器人作为工业自动化的重要设备,其稳定性和可靠性对于生产线的持续运行至关重要。然而,在实际使用中,由于各种原因,可能会出现ABB机器人IO板DSQC651故障,影响机器人的正常运行。 一、ABB工业机械臂IO板故障的常见原因 ABB机器人IO板故障的原因可能有很多,常见的包括电…

Flutter进阶(6):详解 Key

一、Key是什么? 用官方的说法就是:Key 是 Widget、Element 和 SemanticNodes 的唯一标识符。 组件在更新的时候,其状态的保存主要是通过判断组件的类型或者 key 值是否一致。因此,当各组件的类型不同的时候,类型已经足够用来区分不同的组件了,此时我们可以不必使用 key。…

数据的涟漪效应:实时数据赋能保险资产管理,打造数字化、信息化、智能化的保险新业态

本期内容以保险公司的具体案例为切入点,探讨数字化技术如何助力保险资产管理行业应对数据管理的挑战并实现创新突破。使用 TapData,化繁为简,摆脱手动搭建、维护数据管道的诸多烦扰,轻量替代 OGG, Kettle 等同步工具,以及基于 Kafka 的 ETL 解决方案,「CDC + 流处理 + 数…

KingbaseES RAC在线扩容案例

KingbaseES、KingbaseES RAC案例说明: KingbaseES RAC在两节点的基础上,执行在线扩容为3节点。 集群版本: test=# select version();version ---------------------KingbaseES V008R006 (1 row)集群架构:操作系统: [root@node210 KingbaseHA]# cat /etc/os-release NAME=&…