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

3.字节输出流FileOutputStream写出数据的三种方式

一.FileOutputStream类写出数据的3种方式:

  • 上述图片的第一个write方法用于一次只写一个字节数据

  • 上述图片的第二个write方法用于一次写出多个字节数据,其中需要把要写出的数据先放到一个byte类型的数组中,再把整个byte数组中的数据写到文件中->顺序是把byte数组里的元素依次写入指定文件中

  • 上述图片的第三个write方法是只把b数组里的一部分数据写到指定文件中->第一个参数byte[] b就是装着要输出的数据的数组;第二个参数int off是起始索引;第三个参数int len表示要截取的个数->比如起始索引off为0,len为3,表示要写出的数据是从b数组里的0索引开始,一共写3个数据


二.代码演示:

以下所有的演示都操作在当前模块下的a.txt文件。

1.void write(int b)方法:用于一次写一个字节数据

代码:

package com.itheima.mybytestream;
​
import java.io.FileOutputStream;
import java.io.IOException;
​
public class ByteStreamDemo3 {
    public static void main(String[] args) throws IOException {
        //1.创建字节输出流对象->参数传入要操作的文件的地址
        FileOutputStream fos = new FileOutputStream("a.txt");
​
        //2.写出数据
        fos.write(97); //写入文件中的是97在ASCII码中对应的字母a
        fos.write(98);
​
        //3.释放资源
        fos.close();
    }
}

运行结果:

2.void write(byte[] b)方法:用于一次写一个字节数组数据

代码:

package com.itheima.mybytestream;
​
import java.io.FileOutputStream;
import java.io.IOException;
​
public class ByteStreamDemo3 {
    public static void main(String[] args) throws IOException {
        //1.创建字节输出流对象->参数传入要操作的文件的地址
        FileOutputStream fos = new FileOutputStream("a.txt");
​
        //2.写出数据
        /*2.1.创建一个byte数组,把要往文件里写的所有数据都放到该数组中 */
        byte[] bytes = {97, 98, 99, 100, 101};
        /*2.2.调用write方法*/
        fos.write(bytes);
​
        //3.释放资源
        fos.close();
    }
}

运行结果:

3.void write(byte[] b, int off, int len)方法:用于一次写一个字节数组的部分数据

代码:

package com.itheima.mybytestream;
​
import java.io.FileOutputStream;
import java.io.IOException;
​
public class ByteStreamDemo3 {
    public static void main(String[] args) throws IOException {
        //1.创建字节输出流对象->参数传入要操作的文件的地址
        FileOutputStream fos = new FileOutputStream("a.txt");
​
        //2.写出数据
        /*2.1.创建一个byte数组,把要往文件里写的所有数据都放到该数组中 */
        byte[] bytes = {97, 98, 99, 100, 101};
        /*2.2.调用write方法*/
        fos.write(bytes, 1, 2); //表示在bytes数组中从1索引开始,写2个数据到文件中->1索引是98,写2个数据就是只写98和99
​
        //3.释放资源
        fos.close();
    }
}

运行结果:


相关文章:

  • 网站内容建设总结山西网络推广专业
  • 摄影师网站制作宁波seo在线优化方案
  • 门户网站建设检察网站的seo是什么意思
  • 思途旅游网站建设优化seo深圳
  • 易龙天做的网站怎么样网站应该如何推广
  • 网站seo报表seo全网推广营销软件
  • (C语言)单链表(1.0)(单链表教程)(数据结构,指针)
  • Python爬虫教程007:scrapy结合实际案例的简单使用
  • 深入讲解:智能合约中的读写方法
  • NumPy性能调优实战:从调试到性能分析的完整指南
  • Linux进阶——shell脚本语言
  • Bash详解
  • 轻量化大模型微调工具XTuner指令微调实战(下篇)
  • 如何创建一个自行设计的nginx的Docker Image
  • 后端开发常见的面试问题
  • Ansible 实战:Roles,运维的 “魔法函数”
  • 基于FLask的共享单车需求数据可视化分析系统
  • Spring-AOP事务
  • [ctfshow web入门] web4
  • PDF转换:在线将PDF转PPT并且可编辑文字图片,超快速转换软件,无需下载
  • 通过Postman和OAuth 2.0连接Dynamics 365 Online的详细步骤
  • 区块链日记5 - Solana入门 - 部署第一个Solana程序
  • 23种设计模式-行为型模式-命令
  • ubuntu22使用TrinityCore搭建魔兽世界服务器
  • 【计算机网络】Linux配置SNAT/DNAT策略
  • G-Retriever: 用于文本图理解与问答的检索增强生成