广告
返回顶部
首页 > 资讯 > 精选 >如何使用ByteArrayOutputStream实现将数据写入本地文件
  • 566
分享到

如何使用ByteArrayOutputStream实现将数据写入本地文件

2023-06-22 01:06:22 566人浏览 安东尼
摘要

这篇文章主要为大家展示了“如何使用ByteArrayOutputStream实现将数据写入本地文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用ByteArrayOutputStream

这篇文章主要为大家展示了“如何使用ByteArrayOutputStream实现将数据写入本地文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用ByteArrayOutputStream实现将数据写入本地文件”这篇文章吧。

ByteArrayOutputStream将数据写入本地文件

在一个项目中做一次性校验部分,需要将校验后数据写入表格后上传。巧的是,服务器Down了。作为一个新手实习生菜鸟,为了测试自己的代码和输出结果有没有毛病,在大神同事的指点下选择了先将表格输出到本地

于是在百度疯狂搜索“输出流”、“输出文件到本地”、“文件流”等,经过多方搜集和探查以及加工,最后加上了一小段代码

//测试-将表格导入本地文件        FileOutputStream fileOutputStream = null;        try {            fileOutputStream = new FileOutputStream("C:\\Users\\Administrator.DESKTOP-SFAEOA8\\Desktop\\consistencyCheckCommodityRuleTemplate.xlsx");            fileOutputStream.write(byteArrayOutputStream.toByteArray());        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }

以下是上传excel的部分代码。将最后的上传文件到dfs的方法注掉,以在准备好的文件 C:\\Users\\Administrator.DESKTOP-SFAEOA8\\Desktop\\consistencyCheckCommodityRuleTemplate.xlsx 中输出需要的结果

public void uploadExcel() {         //获取校验数据        List<DTO> consistencyCheck = getConsistencyCheck();         //创建模板信息        DataModel dataModel = setDataModel();        ......(此处省略一万字)         //创建ExcelData        ExcelData excelData = setExcelData();        ......(此处也省略一万字)         //创建日志数据        ConsistencyCheckLog consistencyCheckLog = setConsistencyCheckLog();        ......(此处又省略一万字)         //创建excel        ByteArrayOutputStream  byteArrayOutputStream = createExcel(dataModel, excelData);         //测试-将表格导入本地文件        FileOutputStream fileOutputStream = null;        try {            fileOutputStream = new FileOutputStream("C:\\Users\\Administrator.DESKTOP-SFAEOA8\\Desktop\\consistencyCheckCommodityRuleTemplate.xlsx");            fileOutputStream.write(byteArrayOutputStream.toByteArray());        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }         //上传excel(无法上传 先注掉好了)        //uploadFileToDfs(consistencyCheckLog, byteArrayOutputStream);    }

这样就OK了,只添加了测试的部分,得到数据后也是放下了这颗菜心

那来了解一下ByteArrayOutPutStream吧

  • ByteArrayOutputStream类是在创建它的实例时,程序内部创建一个byte型别数组的缓冲区,然后利ByteArrayOutputStream和ByteArrayInputStream的实例向数组中写入或读出byte型数据

  • 字节数组输出流在内存中创建一个字节数组缓冲区,所有发送到输出流的数据保存在该字节数组缓冲区

  • 成功创建字节数组输出流对象后,可以参见以下列表中的方法,对流进行写操作或其他操作

序号方法描述
1public void reset() 将此字节数组输出流的 count 字段重置为零,从而丢弃输出流中目前已累积的所有数据输出。
2public byte[] toByteArray() 创建一个新分配的字节数组。数组的大小和当前输出流的大小,内容是当前输出流的拷贝。
3public String toString() 将缓冲区的内容转换为字符串,根据平台的默认字符编码将字节转换成字符。
4public void write(int w) 将指定的字节写入此字节数组输出流。
5public void write(byte []b, int off, int len) 将指定字节数组中从偏移量 off 开始的 len 个字节写入此字节数组输出流。
6public void writeTo(OutputStream outSt) 将此字节数组输出流的全部内容写入到指定的输出流参数中。

在表格输出时

Java输出流FileOutputStream也发挥了至关重要的作用

使用FileOutputStream写入文件的过程同使用FileInputStream过程相同,都是先用File类打开本地文件,实例化输入输出流,然后调用流的读写方法读取或写入数据,最后关闭流。

FileOutputStream的写入方法

FileOutputStream类提供了多种文件写入方法,可以单独写一个字节到文件,也可以写一个byte数组到文件,也可以取byte数组的部分数据写入到文件。

把读取的结果写入到ByteArrayOutputStream

  • FileOutputStream 可以把数据写到文件中去

  • ByteArrayOutputStream 可以把其他地方的读入的数据写到这里面,最后获取数据所有的 byte[],相当于可以把数据全部读到内存中来.

 // 把读取的结果写入到ByteByteArrayOutputStream public static void main(String[] args) throws IOException {  // TODO Auto-generated method stub  String s = "C:\\a.txt";  int len = 0;  FileInputStream stream = new FileInputStream(s);  ByteArrayOutputStream stream2 = new ByteArrayOutputStream();  byte[] buffer = new byte[5];  //先读后写,循环读写  while ((len = stream.read(buffer)) != -1) {   stream2.write(buffer, 0, len);  }  byte[] data = stream2.toByteArray();  System.out.println(new String(data)); }

以上是“如何使用ByteArrayOutputStream实现将数据写入本地文件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 如何使用ByteArrayOutputStream实现将数据写入本地文件

本文链接: https://www.lsjlt.com/news/301717.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用ByteArrayOutputStream实现将数据写入本地文件
    目录ByteArrayOutputStream将数据写入本地文件那来了解一下ByteArrayOutPutStream吧在表格输出时FileOutputStream的写入方法把读取的...
    99+
    2022-11-12
  • 如何使用ByteArrayOutputStream实现将数据写入本地文件
    这篇文章主要为大家展示了“如何使用ByteArrayOutputStream实现将数据写入本地文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用ByteArrayOutputStream...
    99+
    2023-06-22
  • 使用Spring Batch如何实现将txt文件写入数据库
    使用Spring Batch如何实现将txt文件写入数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、创建 Maven 项目,并在 pom.xml 中添加依赖<...
    99+
    2023-05-31
    springbatch txt文件
  • 如何使用h5+js实现本地文件读取和写入
    小编给大家分享一下如何使用h5+js实现本地文件读取和写入,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   代码如下:   读取本地文件   <!doctypehtml>...
    99+
    2022-10-19
  • Bash脚本中怎么使用here文档将数据写入文件
    这篇文章主要介绍“Bash脚本中怎么使用here文档将数据写入文件”,在日常操作中,相信很多人在Bash脚本中怎么使用here文档将数据写入文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Bash脚本中怎么...
    99+
    2023-06-16
  • .Net Core如何使用Logger实现log写入本地文件系统
    这篇“.Net Core如何使用Logger实现log写入本地文件系统”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇...
    99+
    2023-07-02
  • 【Python】使用pandas将数据写入excel文件中
    文章目录 前言一、pandas是什么?二、使用步骤1.引入库2.将数据写入到Excel中 总结 前言 本文主要简单介绍一下使用python的pandas库来将数据写入到excel文件...
    99+
    2023-09-01
    pandas python excel 经验分享 自动化
  • .Net Core使用Logger实现log写入本地文件系统
    .net core 自带一个基础的logger框架Microsoft.Extensions.Logging。 微软默认实现了Microsoft.Extensions.Log...
    99+
    2022-11-13
  • 如何使用C语言将数字、字符等数据写入、输出到文本文件中
    目录1.首先需要声明一个文件指针变量2.接下来需要对这个指针变量进行初始化3.然后开始利用相应函数将数据写入文件4.最后一步,也是关键的一步总结最近在调试程序,想把过程中需要查看的数...
    99+
    2022-11-13
  • Java怎么实现将类数据逐行写入CSV文件
    这篇文章主要介绍“Java怎么实现将类数据逐行写入CSV文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java怎么实现将类数据逐行写入CSV文件”文章能帮助大家解决问题。代码自定义的CodeOb...
    99+
    2023-07-04
  • 如何实现将txt文件名写入文件首行的bat
    这篇文章给大家分享的是有关如何实现将txt文件名写入文件首行的bat的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。代码如下:@echo off&color 0f&setlocal enablede...
    99+
    2023-06-08
  • 如何用Scala将指定格式的数据写入到文件
    本篇内容主要讲解“如何用Scala将指定格式的数据写入到文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用Scala将指定格式的数据写入到文件”吧!新建FileOps对象:package ...
    99+
    2023-06-02
  • Java实现将类数据逐行写入CSV文件的方法详解
    目录1. 需求和思路2. 现有方法3. 代码4. 参考1. 需求和思路 最近要用java制作一个数据集,每一行是一个样本,格式是csv。用了一下java类的相关概念,把csv文件里的...
    99+
    2022-11-13
    Java类数据写入CSV文件 Java 数据写入CSV Java 数据 CSV
  • 怎么使用C语言将数字和字符等数据写入并输出到文本文件中
    这篇文章主要介绍“怎么使用C语言将数字和字符等数据写入并输出到文本文件中”,在日常操作中,相信很多人在怎么使用C语言将数字和字符等数据写入并输出到文本文件中问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使...
    99+
    2023-07-02
  • 使用java如何实现异步将日志写到文件中
    本篇文章给大家分享的是有关使用java如何实现异步将日志写到文件中,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。java异步写日志到文件中详解实现代码:package com....
    99+
    2023-05-31
    java 异步 日志
  • Python如何实时向文件写入数据(附代码)
    目录1:实时向csv文件写入数据步骤1:创建文件并写入字段步骤2:写入数据2:实时向txt文件写入数据再次向txt文件中写入数据之前在做数据分析的过程中,需要对数据进行实时的写入,比...
    99+
    2022-11-11
  • 利用java如何实现读取本地文件
    利用java如何实现读取本地文件?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。java 读取本地文件实例详解用javax.xml、w3c解析实例代码:package cn.co...
    99+
    2023-05-31
    java 本地文件 ava
  • 使用Java如何将SQL脚本文件执行到数据库中
    使用Java如何将SQL脚本文件执行到数据库中?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。方式一:直接读取SQL脚本文件的内容,然后传递到SQL中。代码:RunSqlSe...
    99+
    2023-05-31
    java sql 数据库
  • Java如何实现文件导入数据库
    在Java中,可以使用Java IO库中的类来实现文件导入数据库的功能。下面是一个简单的示例代码:```javaimport jav...
    99+
    2023-09-15
    Java 数据库
  • PHP如何在多个文件中正确地读取和写入Session数据
    当您在使用PHP会话(Session)时,有时会发现Session在一个文件中可以正常读取,但在另一个文件中却无法读取。这可能会让您感到困惑,因为会话数据应该可以在整个应用程序中共享。本文将解释如何在多个文件中正确地读取和写入PHP会话数据...
    99+
    2023-05-14
    php session
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作