【Java】之IO流

news2024/11/19 7:34:16

0ce056f889d7490e9509bb1dfbb0ad63.png个人主页:天寒雨落的博客_CSDN博客-C,CSDN竞赛,python领域博主

0ce056f889d7490e9509bb1dfbb0ad63.png 特别标注:仅为自己的学习记录笔记,方便复习和加深记忆,仅供借鉴参考!

目录

IO流概述

IO流分类

按数据的流向

按数据类型

字符流

字节流

字节流写数据

字节流抽象基类

 字节流写入数据的3种方式

  实现数据的换行

  实现数据的追加写入


 

IO流概述

IO:输入/输出(Input/Output)。

流:是一种抽象概念,是对数据传输的总称,数据在设备间的传输称为流。

IO流:用来处理设备间数据传输的问题

IO流分类

按数据的流向

输入流:读数据

输出流:写数据

按数据类型

字节流

字节输入流;字节输出流

字符流

字符输入流;字符输出流

如果数据通过Window自带的记事本软件打开,我们还可以读懂里面的内容,就使用字符流,否则使用字节流,如果不知道该使用哪种类型的流,就使用字节流

字节流

字节流写数据

字节流抽象基类

InputStream:表示字节输入流的所有类的超类

OutputStream:表示字节输出流的所有类的超类

FileOutputStream(String name):创建文件输出流以指定的名称写入文件中

举例

package IO;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileOutputStreamDemo1 {

	public static void main(String[] args) throws IOException {
		FileOutputStream fos=new FileOutputStream("fos.txt",true);
		fos.write("hello,IO\n".getBytes());
		fos.close();
	}

}

 为什么一定要close()呢?
 1.让流对象变成垃圾,这样就可以被垃圾回收器回收了
 2.通知系统去释放跟该文件相关的资源

执行结果

b4f613685207483d8dd22631fc08ffbd.pnge78b8215098e48fa84c6c1a848e2a6ad.png

 字节流写入数据的3种方式

 1. public void write(int b):写一个字节
 2.public void write(byte[] b):写一个字节数组
 3.public void write(byte[] b,int off,int len):写一个字节数组的一部分

举例

代码

package IO;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileOutputStreamDemo1 {

	public static void main(String[] args) throws IOException {
		FileOutputStream fos=new FileOutputStream("fos2.txt",true);
		fos.write(97);
		byte[] bys={97,98,99,100,101};
		fos.write(bys);
		fos.write(bys, 2, 3);
		fos.close();
	}

}

执行结果

e3e315d21f764f79a960ded9e5854b05.png8d9c54cd6b60439b9bd32a766d476acb.png

  实现数据的换行

 不同的系统针对不同的换行符号识别是不一样的:
 indows:\r\n
 linux:\n
 Mac:\r

  实现数据的追加写入

用构造方法带第二个参数是true的情况即可

举例

代码

package IO;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileOutputStreamDemo1 {
	public static void main(String[] args) throws IOException {
		FileOutputStream fos=new FileOutputStream("fos3.txt",true); 
		for (int i = 0; i < 10; i++) {
			byte[] bys="hello world".getBytes();
			fos.write(bys);
			fos.write("\r\n".getBytes());
		}
		fos.close();

	}

}

运行结果

d78c087b34234ed8afec26e6e0314cef.png72c979d6a71c4f6ba247686cf64d31d7.png

 

 

各位学习java的朋友可以联系我,互相讨论,一起进步!!!

👍+✏️+⭐️是对博主最大的鼓励与支持!!!

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】虚拟机安装Ubuntu后的一些通用设置

文章目录前言一、虚拟机缩放设置二、实现本机和虚拟机之间复制粘贴共享三、ubuntu中vi文件时方向键等问题四、虚拟机扩容五、时区和时间格式设置六、防火墙相关七、中文输入法问题八、虚拟机和主机之间的互通前言 主要是记录虚拟机中安装ubuntu后一些常规设置操作。 一、虚拟…

当你使用MPLS时,不要忘记还有SD-WAN!

企业网络管理人员和IT部门主管在考虑其WAN架构时最常见的问题就是&#xff1a;“为什么我要选择SD-WAN而不是MPLS&#xff1f;”确实&#xff0c;选择新技术时通常会带来“不确定性”。 与MPLS相比&#xff0c;SD-WAN更便宜&#xff0c;性能更强&#xff0c;也带来了更低成本的…

IDEA安装及Clone代码

IDEA安装及Clone代码 文章目录1.IDEA下载2.IDEA安装3 IDEA clone(克隆) 代码1.IDEA下载 官网下载地址&#xff1a; DEA 分为两个版本&#xff1a; 旗舰版(Ultimate)和社区版(Community)。 旗舰版&#xff1a;收费(限 30 天免费试用)&#xff0c;功能全面&#xff0c;插件丰富…

公众号查题系统搭建

公众号查题系统搭建 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 查题校园题库&#xff1a;查题校园题库后台&#xff08;点击…

刚来的00后真的卷,听说工作还没两年,跳到我们公司直接起薪20k...

前段时间我们公司来了个00后&#xff0c;工作都没两年&#xff0c;跳槽到我们公司起薪18K&#xff0c;都快接近我了。后来才知道人家是个卷王&#xff0c;从早干到晚就差搬张床到工位睡觉了。 最近和他聊了一次天&#xff0c;原来这位小老弟家里条件不太好&#xff0c;一大家子…

c++内存管理:

目录 new和delete 使用方法&#xff1a; 注意事项&#xff1a; new申请不需要检查返回值 operator new和operator delete函数的讲解 c语言申请内存有哪些方法&#xff1a; 答&#xff1a;malloc calloc realloc三种 #include<stdlib.h> void test() {int*p1 (in…

Day11-尚品汇-退出登录

1.在Header组件里面&#xff1a; 1》绑定一个click事件 2》写其触发的方法 2.发请求通知服务器 1》先观察文档 2》.在api里面写代码&#xff1a; 3》在store仓库user.js里面也要写代码&#xff1a; 1&#xff09; 不单单向服务器发请求清除token&#xff0c;而且需要清除use…

【MLOPs】Docker

&#x1f50e;大家好&#xff0c;我是Sonhhxg_柒&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f4dd;个人主页&#xff0d;Sonhhxg_柒的博客_CSDN博客 &#x1f4c3; &#x1f381;欢迎各位→点赞…

Python基础加强学习

一、python概述 1. python的应用领域 web开发大数据处理人工智能自动化运维开发云计算爬虫游戏开发 2. 安装python 要进行python开发&#xff0c;首先要安装python解释器&#xff0c;这里说的安装python说的就是安装python的解释器。 测试python是否安装成功&#xff0c;在…

基于springboot的校园二手网站

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

过滤器和拦截器的区别

目录 1 前言 2 区别 2.1 实现原理不同 2.2 使用范围不同 2.3 执行顺序不同 4 注入Bean的情况不同 1 前言 可能有些小伙伴们在接手公司的项目时&#xff0c;经常看到公司的项目中既有过滤器又有拦截器&#xff0c;那么它们既然都拦截的作用&#xff0c;那么各自扮演着什么…

pyinstaller打包出错记录

稍微记录一下最近在liunx上pyinstaller打包出错 目录稍微记录一下最近在liunx上pyinstaller打包出错1 号坑 Python3.7.0安装2号坑 成功打包但是执行失败小结后面代码的环境是在Windows子系统下的Ubuntu 20.04下进行的。vscode可以通过&#xff0c;配置WSL来进入环境&#xff08…

Pytorch+Python实现人体关键点检测

用PythonPytorch工程代码对人体进行关键点检测和骨架提取&#xff0c;并实现可视化。 使用背景&#xff1a; 物体检测为许多视觉任务提供动力&#xff0c;如实例分割、姿态估计、跟踪和动作识别。它在监控、自动驾驶和视觉答疑中有下游应用。当前的对象检测器通过紧密包围对象…

深度学习提高模型准确率方法

这里写目录标题深度学习数据使用更多数据更改图像大小减少颜色通道算法模型改进增加训练轮次迁移学习添加更多层调整超参数总结深度学习 我们已经收集好了一个数据集&#xff0c;建立了一个神经网络&#xff0c;并训练了模型&#xff0c;在测试和验证阶段最后得到的准确率不高…

8086通用寄存器

目录 概述 EU&#xff1a;负责执行指令完成两种操作&#xff1a;算数逻辑运算&#xff0c;计算存储器操作数的偏移地址 BIU&#xff1a;完成所有的总线操作 寄存器 AX BX CX DX SP,BP,SI,DI IP CS&#xff0c;DS&#xff0c;SS&#xff0c;ES 概述 8086和8088C…

神经网络每次结果不一样,神经网络预测问题

1、求助&#xff1a;神经网络两次训练的结果不一样 神经网络两次训练的结果不一样&#xff0c;这是因为每次训练的迭代初值不相同&#xff08;是随机的&#xff09;&#xff0c;所以得到的结果是有差异的。一般的话&#xff0c;软件开启第一次时&#xff0c;运行得到结果是比较…

Java | 学习笔记02 快速之旅

运行已经开发好的Java程序&#xff0c;只需要JRE&#xff08;Java运行时环境&#xff09;就可以。但事实上&#xff0c;要想完成一个Java程序的开发&#xff0c;我们至少需要安装好JDK 目录 一、Java环境配置 1.下载JDK 2.配置环境变量 二、Hello World&#xff01; 三、I…

关于C++、C++ CLI, Java、C# 的自定义类实现列表初始化。

1、C DList_类构造函数 /// <summary> /// 表表初始化 dList<int> idl {1,2,3,4}; /// </summary> /// <typeparam name"T"></typeparam> /// <param name"tList"></param> template<class T> inline …

一只脚踏进Java的大门

一杯热气腾腾的咖啡&#xff0c;没错&#xff0c;这就是Java的标志。学习Java&#xff0c;我们就从这杯咖啡开始。2022年10月24日&#x1f6a9; Hello Java!一、认识Java从Hello world开始二、运行Java程序1、编译运行原理2、JDK、JRE、JVM以及它们之间的关系3、运行步骤展示三…

C语言-简单的程序设计

&#x1f31e;欢迎来到C语言的世界 &#x1f308;博客主页&#xff1a;卿云阁 &#x1f48c;欢迎关注&#x1f389;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f31f;本文由卿云阁原创&#xff01; &#x1f320;本阶段属于练气阶段&#xff0c;希望各位仙友顺利完成…