InputStream&FileOutputStream文件复制后文件变大

2023-11-05

InputStream is ;
FileOutputStream fos = new FileOutputStream("保存文件路径+名称");
                    byte[] b = new byte[1024];
                    while ((is.read(b)) != -1) {
                        fos.write(b);// 写入数据
                    }
                    is.close();
                    fos.close();// 保存数据

这段代码就是最简单的字节流复制文件,我们设置了一个byte类型的数组,用来作为存储文件字节码的容器,我们的起始文件大小大概率是不会被1024整除的,所以当文件拷贝的最后一次小于1024个字节的时候,会把空的字节写入到目的文件中,所以最终的目的文件字节数一定会被1024整除,就这样变大了一点点。

解决方法:

  FileOutputStream fos = new FileOutputStream("保存文件路径+名称");
                    byte[] b = new byte[1024];
                    int len;
                    while ((len = is.read(b)) != -1) {
                        fos.write(b,0,len);// 写入数据
                    }
                    //关流释放资源(先开后关)
                    fos.close();// 保存数据

                    is.close();

参考文章:https://www.cnblogs.com/axibug/p/14911783.html

                  https://blog.csdn.net/gxzhaha/article/details/108206905

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

InputStream&FileOutputStream文件复制后文件变大 的相关文章

  • 如何使用retrofit2动态设置超时?

    public class Router private static Retrofit retrofit null public Retrofit getRetrofit if retrofit null OkHttpClient clie
  • 如何实现具有LinkedHashMap类似功能的ConcurrentHashMap?

    我用过LinkedHashMap with accessOrdertrue 并同时允许最多 500 个条目作为数据的 LRU 缓存 但由于可扩展性问题 我想转向一些线程安全的替代方案 ConcurrentHashMap在这方面似乎不错 但缺
  • Active MQ - HelloWorld 示例异常

    我正在尝试运行 hello world 示例在这里找到 http activemq apache org hello world html I added activemq all 5 5 1 jar已经到图书馆了 它构建成功 但出现以下警
  • 在java中将DataURL图像转换为图像文件

    我在我的 java servlet 中接收图像 DataURL 它看起来像 data image jpeg base64 9j 4AAQSkZJRgABAQAAAQABAA 我需要将其另存为图像文件 我该怎么做 The simplest w
  • spring mvc 跟踪引用页面

    在基于注释的弹簧控制器中 如果用户正在url com first page并点击一个链接或提交一份表格指出url com second page 如何制作second page知道url of first page所以这样second pa
  • SwingWorker 在另一个 SwingWorker 的 did 方法中

    首先 我需要通知您 我正在尽最大努力学习如何用 Java 编写代码 虽然有点困难 但我相信我能做到 我过去提交了几个有关 SwingWorkers 等的问题 每一个我都以为我已经做到了 但后来发现我仍然需要学习 希望这一次不是那样的一次 话
  • Java 中的 MP4 容器编写器

    我想找到一个免费的 Java MP4 容器 编写器 我不需要编码器 只需要能够根据预期值写入正确原子的编码器 Bonus对于这样一个库 也可以编写 有效 F4V 我更喜欢纯 Java 解决方案 而不是使用 JNI 或外部可执行文件的解决方案
  • selenium webdriver 中的多个程序执行不起作用

    Selenium WebDriver 中的多个程序执行不起作用 我编写了 1 个 testNG xml 文件和 2 个 java 类 我尝试从 xml 文件运行这两个 java 类 但这不起作用 XML代码
  • 两条腿的 OAuth 和 Gmail Atom feed

    我们正在尝试让 2 legged OAuth 与 Gmail Atom feed 一起使用 我们使用 John Kristian Praveen Alavilli 和 Dirk Ba lfanz 贡献的 Java 库 http oauth
  • java中日期转换dd-MMM-yyyy到dd-MM-yyyy

    在Java中将23 Mar 2011转换为23 03 2011的最简单方法是什么 感谢大家 这似乎解决了这个问题 try Calendar cal Calendar getInstance cal setTime new SimpleDat
  • Java字符串查找和替换的最佳方法?

    我正在寻找 Java 中字符串查找和替换的最佳方法 这是一句话 我的名字叫米兰 人们都知道我叫米兰瓦西奇 我想用 Milan Vasic 替换 Milan 弦 但在我已经有 Milan Vasic 的地方 情况不应该是这样 搜索 替换后的结
  • 获取包中声明的所有 Java 类的名称

    我正在编写一个功能 它将有助于将类放入我的程序的某个包中 另外 我只想要子类某个类的类 我需要这些类才能调用它们的静态方法 有没有一种自动的方法来做到这一点 如果是的话 速度慢吗 如果我不清楚 我想要的是这样的 ArrayList
  • Java LRU 缓存使用 LinkedList

    堆栈溢出的新手 所以请不要介意我以菜鸟的方式问这个问题 我正在尝试使用链表实现 LRU 缓存 我在这里看到了使用 linkedHashMap 和其他数据结构的其他实现 但对于这种情况 我正在尝试使用链表创建最佳优化版本 正如我在技术期间被问
  • 如何在Java中模拟引用传递?

    我是一个十足的 Java 菜鸟 我知道 Java 将所有参数视为按值传递 并且还有其他几个线程人们对此进行了解释 例如 在 C 中我可以这样做 void makeAThree int n n 3 int main int myInt 4 m
  • javax.xml.bind.JAXBException: 类 *** 及其任何超类在此上下文中均未知

    我正在尝试通过 REST Web 服务传递对象 以下是我的课程 使用一些示例代码解释了我需要的功能 Rest Web 服务类方法 POST Path find Consumes MediaType APPLICATION FORM URLE
  • while 之后无法访问的语句[重复]

    这个问题在这里已经有答案了 我只是修改代码 在以下代码中出现错误 int x 1 System out println x x while true x System out println x x 错误在最后一行 我可以知道错误 错误 无
  • Struts2中的变量声明

    Struts2中如何声明变量并为该变量赋值 使用设置标签
  • Lucene/Hibernate 搜索锁定异常

    我使用 Hibernate Search 在 Web 应用程序上索引和全文搜索项目 没有问题 来自我的 pom xml
  • AndroidAnnotations 和 Dagger

    我正在尝试使用 Dagger 注入 Android 带注释的 Activity java lang IllegalArgumentException No inject registered for members com app serv
  • Java 可变 BigInteger 类

    我正在使用 BigIntegers 进行计算 该计算使用一个调用 multiply 大约 1000 亿次的循环 并且从 BigInteger 创建新对象使其非常慢 我希望有人编写或找到了 MutableBigInteger 类 我在 jav

随机推荐

  • 微信小程序 [Component] slot ““ is not found.

    解决方案 不影响使用 别管它
  • 传输线的物理基础(六):当返回路径切换参考平面

    线缆专门设计有与信号路径相邻的返回路径 这适用于同轴线缆和双绞线线缆 返回路径很容易遵循 在电路板的平面互连中 返回路径通常设计为平面 就像在多层板中一样 对于微带线 信号路径正下方有一个平面 返回电流很容易识别 但是 如果与信号路径相邻的
  • JournalNode无法启动问题排查

    JournalNode无法启动问题排查 1 问题说明 1 1 JournalNode重新启动后又失败 一直重启不成功 经过观察 发现日志报错 经排查报错原因是编辑log损坏导致的 2018 05 28 16 06 07 896 WARN n
  • 【JS逆向】猿人学第二题动态cookie

    JS逆向 猿人学第二题动态cookie 一 分析网站 题目已经声明 关于cookie方面加密 所以进入网站后需要清理网站加载的cookie 方便调试 再次请求网站分析网站加载的参数 这里看到网站请求了两次接口 观察发现第一次请求并没有携带c
  • taro+flutter开发app应用问题汇总

    采用flutter webview plugin集成taro页面 flutter下taro无法拨打号码 一开始通过flutterWebViewPlugin onUrlChanged listen url 监听url变化 if url sta
  • ajax二进制图片显示,ajax请求图片,二进制形式显示图片有问题

    我想通过ajax请求图片vm ajaxGet img logo png function data 这里data 就是图片本身的文件流 测试ajax没有问题 var img document createElement img img on
  • 数据库连接接口(驱动)

    基于go python C 语言实现的数据库驱动 数据库 类型 Go语言 Python语言 C C 语言 MySQL 多线程关系型 github com go sql driver mysql mysql connector和PyMySQL
  • kubernetes(k8s) quick start

    文章目录 安装 使用kubeadm 环境准备 1 设置主机名与时区 2 添加hosts网络主机配置 三台虚拟机都要设置 3 关闭 selinux 关闭防火墙 关闭 swap 4 安装kubeadm 5 配置网桥 6 通过镜像安装k8s 7
  • YouComplete问题汇总

    1 ycm的readme中给出推荐版本需要注意一下 2 clone这个ycm 需要翻墙 不然完成不了编译 3 编译手段 按照给出的python需求进行编译 python3 install py clang completer 4 编译期间会
  • Unit8Array 转 Unit16Array

    vat u8 new Unit8Array data const buf Buffer from u8 const u16 new Uint16Array buf buffer buf byteOffset buf byteLength U
  • android:基于http的get和post请求

    1 说在前面 初次接触android的网络编程 现在再一次被刷新了世界观 android程序往往扮演的是一个 客户端 的角色 和服务器之间进行沟通 从而获得服务器传来的数据 通过服务器传回的信息丰富程序的内容 2 Http协议 2 1 概念
  • ESP32 LVGL8.1 实现太空人显示(29)

    文章目录 一 ESP32 LVGL工程配置 1 1从库中下载LVGL代码 1 2配置适合ESP32 液晶屏 1 3编译下载测试 二 GIF图片处理 2 1下载gif图片 2 2将gif图片按照帧率导出成图片 2 3导出的图片背景处理 2 4
  • 以蛋白质功能研究为题写一篇综述论文

    我们现在知道蛋白质是生物体的基本结构和功能的基础 它不仅可以提供机体所需的能量 还可以参与其他重要的生理过程 蛋白质的结构和功能与其化学性质密切相关 本文将重点介绍蛋白质的功能 并研究一些如何利用蛋白质来探索它在生物体中的作用 通过研究 我
  • 模拟电路设计学习

    模拟电路设计 1 功能示意图 三个滑动变阻器可以对3路恒流源输出量进行调节 从而改变LED发光亮度 ADS1220芯片 需要使用SPI模式1 目前使用的是两线制接线方式 不需要校准 加热丝PID控温 在湿度变送器项目中有涉及 光电采集板不对
  • 第十四章 我的毕业之作—苏州大学过程化管理系统

    大四上学期忙活着考研 虽然考研不顺利 但是上学期着急忙慌的在所难免 没做什么事情 也没有找工作 所以去年6月份接的项目一直推迟到现在才算大功告成 这虽然不是我做的最后一个项目 但是这是我的毕业设计 导师就是我一直跟随的陈老师 这个系统在我所
  • Dubbo 在 K8s 下的思考

    作者 曹胜利 Apache Dubbo PMC 导读 Dubbo 作为高性能 Java RPC 框架的刻板印象早已深入人心 在 Cloud Native 的架构选型上 Spring Cloud 或许才是业界的优先选择 实际上 Dubbo 已
  • nodejs将rtsp视频流打上水印后通过websocket发送给前端

    网上有把rtsp流通过websocket发送到前端的方法 就是用rtspStream 具体代码如下 var stream require node rtsp stream stream new stream name name stream
  • mount nfs 共享 用户名和组更改及没有写的权限

    今天工作当中碰到了这个问题 etc exports home ict ict data NewsData 10 0 21 65 rw home ict ict data ForumData 10 0 21 75 rw 结果在客户端mount
  • 招聘专用「人才洞察工具」|One Model

    人力管理 Talent management 在企业运营中起着关键的作用 不仅有助于优化人力资源的配置 还可以提高员工绩效 满意度和忠诚度 推动企业实现可持续增长 在人工智能蓬勃发展的当下 借助 AI 进行人才洞察也成为了现实 One Mo
  • InputStream&FileOutputStream文件复制后文件变大

    InputStream is FileOutputStream fos new FileOutputStream 保存文件路径 名称 byte b new byte 1024 while is read b 1 fos write b 写入