当前位置: 首页 > news >正文

IO流体系(FiletOutputStream)

书写步骤:

1.创建字节输出流对象

细节1:参数是字符串表示的路径或者是File对象都是可以的

细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的。

细节3:如果文件已经存在,则会清空文件

2.写数据

细节:write方法的参数是整数,但是实际上写到本地文件中的是整数在ASCII上对应的字符

3.释放资源

每次使用完之后都要释放资源

提前创建好a.txt的文件

package myio;import java.io.FileOutputStream;
import java.io.IOException;public class IoDemo1 {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("D:\\你自己的路径\\a.txt");fos.write(97);fos.close();}
}

运行之后就可以看见a.txt里面多了个a

一次写多个数据

一次写一个字节数组数据

package myio;import java.io.FileOutputStream;
import java.io.IOException;public class IoDemo1 {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("D:\\Web\\API\\src\\myio\\a.txt");
//        fos.write(97);byte[] bytes = {97,98,99,100,101};fos.write(bytes);fos.close();}
}

写数组中的部分数据

package myio;import java.io.FileOutputStream;
import java.io.IOException;public class IoDemo1 {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("D:\\Web\\API\\src\\myio\\a.txt");
//        fos.write(97);byte[] bytes = {97,98,99,100,101};
//        fos.write(bytes);fos.write(bytes,1,3);fos.close();}
}

换行写

1.再次写出一个换行符就可以了

windows:\r\n Linux:\n Mat:\r

细节:

在windows操作系统当中,java对回车换行进行了优化。虽然完整的是\r\n,但是我们写其中一个\r或者\n,java也可以实现换行,因为java在底层会补全。

建议:不要省略,还是写全了

package myio;import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;public class IoDemo2 {public static void main(String[] args) throws IOException {FileOutputStream fos = new FileOutputStream("D:\\Web\\API\\src\\myio\\a.txt");String str = "shiyifangjia";byte[] bytes = str.getBytes();
//        System.out.println(Arrays.toString(bytes));fos.write(bytes);//换行String wrap = "\r\n";byte[] bytes1 = wrap.getBytes();fos.write(bytes1);String str2 = "666";byte[] bytes2 = str2.getBytes();fos.write(bytes2);fos.close();}
}

续写

如果想要续写,打开续写开关即可

开关位置:创建对象的第二个参数

默认false:表示关闭续写,此时创建对象会清空文件

手动传递true:表示打开续写,此时创建对象不会清空文件

http://www.lryc.cn/news/442927.html

相关文章:

  • 网络设备登录——《路由与交换技术》实验报告
  • CSS——网格布局(display: grid)之下篇
  • 低势期操作
  • IMS 呼叫流程(详细)
  • 系统架构设计师:系统架构设计
  • win11不显示已经打开的窗口
  • 数学建模常用模型全面总结(含适用条件、优点、局限性和应用场景)
  • RabbitMQ消费者确认和重复机制
  • 【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL77
  • thinkPHP 8.0.4 安装
  • 在k8s中,客户端访问服务的链路流程,ingress--->service--->deployment--->pod--->container
  • 寄存器二分频电路
  • Kafka3.8.0+Centos7.9的安装参考
  • Redis——持久化策略
  • 并查集LRU cache
  • SpringCloud的学习(三),Resilience4j
  • 【计算机网络篇】计算机网络概述
  • UDS诊断-面试题2
  • ovirt error: Network not found: no network with matching name ‘vdsm-ovirtmgmt‘
  • 2024百度的组织架构和产品分布
  • Java中List、ArrayList与顺序表
  • 缓存技巧 · Spring Cache Caffeine 高性能缓存库
  • RabbitMq中交换机(Exchange)、队列(Queue)和路由键(Routing Key)
  • 解码 OpenAI 的 o1 系列大型语言模型
  • 大小端字节序 和 内存高低地址顺序
  • Spring扩展点系列-MergedBeanDefinitionPostProcessor
  • Centos 7.9 使用 crontab 实现开机启动
  • 基于微信的设备故障报修管理系统设计与实现+ssm论文源码调试讲解
  • yolo自动化项目实例解析(二)ui页面整理 1.78
  • PyQt / PySide + Pywin32 + ctypes 自定义标题栏窗口 + 完全还原 Windows 原生窗口边框特效项目