将byte []写入OutputStream时添加缓冲区

范·达夫

在我的方法中,我将数据从文件保存到输出流。

现在看来

public void readFileToOutputStream(Path path, OutputStream os) {
    byte[] barr = Files.readAllBytes(path)

    os.write(barr);
    os.flush();
}

但是在此解决方案中,所有字节均加载到内存中,我想使用缓冲区释放其中的一些字节。

我可以使用什么为缓冲区提供读数?

沃尔特苏
  1. 简便的方法是使用Commons IO库

    public void readFileToOutputStream(Path path, OutputStream os) throws IOException {
      try(InputStream in = new FileInputStream(path.toFile())){
        IOUtils.copy(in, os);
      }
    }
    
  2. 您可以像IOUtils.copy一样自己实现

    public void readFileToOutputStream(Path path, OutputStream os) throws IOException {
      try (InputStream fis = new FileInputStream(path.toFile());
           InputStream bis = new BufferedInputStream(fis)) {
        byte[] buffer = new byte[4096];
        int n;
        while ((n = bis.read(buffer)) >= 0) {
          os.write(buffer, 0, n);
        }
      }
    }
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将byte []写入OutputStream时添加缓冲区

来自分类Dev

FileStream将缓冲区写入文件

来自分类Dev

将文件写入缓冲区

来自分类Dev

将缓冲区写入设备时发生OpenCL访问冲突

来自分类Dev

将文件写入磁盘并使用缓冲区时,C中的分段错误11

来自分类Dev

写入缓冲区时,Vim将光标返回到文件中的同一点

来自分类Dev

TypeError:预期的字符缓冲区对象(将字典键写入文本文件时)

来自分类Dev

无法将大缓冲区写入EEPROM

来自分类Dev

将opengl缓冲区写入视频的工件

来自分类Dev

无法将大缓冲区写入EEPROM

来自分类Dev

将二进制数据写入缓冲区

来自分类Dev

使用通道将数据从outputStream传递到字节缓冲区

来自分类Dev

使用通道将数据从outputStream传递到字节缓冲区

来自分类Dev

使用libpng 1.2将RGB图像缓冲区写入内存中的PNG缓冲区导致分段错误

来自分类Dev

从缓冲区将数据写入磁盘上的wave文件

来自分类Dev

使用外部命令将缓冲区写入磁盘后保持光标放置

来自分类Dev

如何将最低有效位写入缓冲区?

来自分类Dev

将ITK(insight工具包)结果写入本地缓冲区

来自分类Dev

将int写入二进制缓冲区(Android)并使用C ++读取

来自分类Dev

如何将 Short/Int 写入 1 字节缓冲区

来自分类Dev

Android如何将int值写入缓冲区并使用计时器从缓冲区中获取值?

来自分类Dev

处理来自byte []缓冲区的消息,将剩余的字节放在下一个缓冲区之前

来自分类Dev

处理来自byte []缓冲区的消息,将剩余的字节放在下一个缓冲区之前

来自分类Dev

ffmpeg:将音频与混合音频添加到叠加过滤的视频时,会出现缓冲区队列溢出错误

来自分类Dev

将`:map`的输出放入缓冲区

来自分类Dev

将流转换为缓冲区?

来自分类Dev

将缓冲区转换为结构

来自分类Dev

将audioContext转换回缓冲区

来自分类Dev

将流转换为缓冲区?

Related 相关文章

  1. 1

    将byte []写入OutputStream时添加缓冲区

  2. 2

    FileStream将缓冲区写入文件

  3. 3

    将文件写入缓冲区

  4. 4

    将缓冲区写入设备时发生OpenCL访问冲突

  5. 5

    将文件写入磁盘并使用缓冲区时,C中的分段错误11

  6. 6

    写入缓冲区时,Vim将光标返回到文件中的同一点

  7. 7

    TypeError:预期的字符缓冲区对象(将字典键写入文本文件时)

  8. 8

    无法将大缓冲区写入EEPROM

  9. 9

    将opengl缓冲区写入视频的工件

  10. 10

    无法将大缓冲区写入EEPROM

  11. 11

    将二进制数据写入缓冲区

  12. 12

    使用通道将数据从outputStream传递到字节缓冲区

  13. 13

    使用通道将数据从outputStream传递到字节缓冲区

  14. 14

    使用libpng 1.2将RGB图像缓冲区写入内存中的PNG缓冲区导致分段错误

  15. 15

    从缓冲区将数据写入磁盘上的wave文件

  16. 16

    使用外部命令将缓冲区写入磁盘后保持光标放置

  17. 17

    如何将最低有效位写入缓冲区?

  18. 18

    将ITK(insight工具包)结果写入本地缓冲区

  19. 19

    将int写入二进制缓冲区(Android)并使用C ++读取

  20. 20

    如何将 Short/Int 写入 1 字节缓冲区

  21. 21

    Android如何将int值写入缓冲区并使用计时器从缓冲区中获取值?

  22. 22

    处理来自byte []缓冲区的消息,将剩余的字节放在下一个缓冲区之前

  23. 23

    处理来自byte []缓冲区的消息,将剩余的字节放在下一个缓冲区之前

  24. 24

    ffmpeg:将音频与混合音频添加到叠加过滤的视频时,会出现缓冲区队列溢出错误

  25. 25

    将`:map`的输出放入缓冲区

  26. 26

    将流转换为缓冲区?

  27. 27

    将缓冲区转换为结构

  28. 28

    将audioContext转换回缓冲区

  29. 29

    将流转换为缓冲区?

热门标签

归档