问题标签 [bufferedinputstream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1669 浏览

java - 如何调整 BufferedInputStream read()?

我正在从 Oracle 数据库中读取 BLOB 列,然后将其写入文件,如下所示:

文件大小约为 3MB,读取缓冲区需要 40-50 秒。它实际上是一个 3D 图像数据。那么,有什么办法可以减少这个时间吗?

0 投票
4 回答
30542 浏览

buffer - 阅读 HttpURLConnection InputStream - 手动缓冲区还是 BufferedInputStream?

读取 HttpURLConnection 的 InputStream 时,是否有理由使用以下其中之一?我已经在示例中看到了两者。

手动缓冲:

缓冲输入流

编辑一般来说,我对 HTTP 还是很陌生,但我想到的一个考虑是,如果我使用的是持久 HTTP 连接,我不能在输入流为空之前读取,对吗?在那种情况下,我不需要读取消息长度并只读取该长度的输入流吗?

同样,如果不使用持久连接,我包含的代码在正确读取流方面是否 100% 好?

0 投票
5 回答
21884 浏览

java - BufferedInputStream 的使用

让我谨慎地开始这篇文章。当谈到 Java 时,我是一个完全的初学者。我一直在断断续续地编写 PHP,但我已经准备好做一个桌面应用程序,所以出于各种原因我决定使用 Java。

我正在处理的应用程序处于初始阶段(少于 5 个类),我需要从本地文件中读取字节。通常,这些文件当前小于 512kB(但将来可能会变得更大)。目前,我正在使用 aFileInputStream将文件读入三字节数组,完全满足我的要求。但是,我看到了 a BufferedInputStream,并且想知道我目前这样做的方式是否最好,或者我是否也应该使用 a BufferedInputStream

我已经做了一些研究,并在 Stack Overflow 上阅读了一些问题,但我仍然无法理解何时使用和不使用BufferedInputStream. 在我的情况下,我读取字节的第一个数组只有几个字节(小于 20)。如果我收到的数据在这些字节中是好的,那么我将文件的其余部分读入另外两个不同大小的字节数组。

我还听到很多人提到分析,以查看在每种特定情况下哪个更有效,但是,我没有分析经验,我不确定从哪里开始。我也想对此提出一些建议。

很抱歉写了这么长的帖子,但我真的很想学习和理解做这些事情的最佳方法。我总是有第二次猜测我的决定的坏习惯,所以我希望得到一些反馈。谢谢!

0 投票
3 回答
300 浏览

java - 许多嵌套的 BufferedInputStream 的 - 有什么影响?

有一个常见的模式,当应用程序的每一层处理来自流的数据时,往往会将其包装到一个 BufferedInputStream 中,因此总的来说,有很多缓冲区,从缓冲区填充,从缓冲区填充等等。

我认为这是不好的做法,并想质疑:它如何影响性能?这会导致错误吗?

0 投票
4 回答
33398 浏览

java - 我应该缓冲 InputStream 还是 InputStreamReader?

以下两种缓冲方法之间有什么区别(如果有)?

0 投票
2 回答
5918 浏览

java - Java - 使用带有套接字的 DataInputStream,缓冲与否?

我正在编写一个简单的客户端/服务器应用程序,我发现使用 DataInputStream 读取数据非常方便,因为它允许您选择要读取的内容(无需自己从字节转换),但我想知道它是否会最好也将它包装在 BufferedInputStream 中,或者这只会增加不必要的开销?

我问的原因是因为我不知道直接从套接字流读取是多么昂贵(当使用 BufferedInputStream 时,它只会从套接字流中读取一次,然后使用 DataInputStream 从 BufferedInputStream 乘以时间)。

接收到的数据通常很小,大约 20-25 字节。

提前感谢您的任何回答!:D

0 投票
1 回答
107 浏览

java - 关于在使用 BufferedOutput/Input Stream 时如何发送带有文件属性的文件名的任何想法?

我正在发送一些 jpeg(有时是 zip)文件。我想知道是否有人知道将文件名(或自定义文件名)与文件一起发送的方法,而不是定义

0 投票
2 回答
5311 浏览

java - 在 Java 中寻找 BufferedInputStream 的最佳大小

我正在分析加载二进制文件的代码。加载时间约为 15 秒。

我的大部分加载时间来自加载二进制数据的方法。

我有以下代码来创建我的 DataInputStream:

我把它改成这样:

所以在我做了这个小修改后,加载代码从 15 秒变成了 4 秒。

但是后来我发现 BufferedInputStream 有两个构造函数。另一个构造函数允许您显式定义缓冲区大小。

我有两个问题:

  1. 在 BufferedInputStream 中选择了什么大小,是否理想?如果没有,我怎样才能找到缓冲区的最佳大小?我应该编写一些执行二进制搜索的快速代码吗?
  2. 这是我可以使用 BufferedInputStream 的最佳方式吗?我最初在 GZIPInputStream 中拥有它,但好处可以忽略不计。我假设代码现在所做的是每次需要填充文件缓冲区时,GZIP 输入流都会通过并解码 x 字节(其中 x 是缓冲区的大小)。完全省略 GZIPInputStream 值得吗?绝对不需要,但是使用它时我的文件大小会大大减小。
0 投票
2 回答
178 浏览

java - 缓冲输入流帮助

我在某处看到了以下代码,我对 (ry-'0') 部分感到困惑。那有什么用?bis 是一个缓冲输入流,输入是一行多个整数,每个整数由一个空格分隔(即 1 2 3 4 5 6)。

0 投票
1 回答
1087 浏览

android - android上的间歇性HttpClient GET问题

我有一个我一直在研究的 android 应用程序,它从服务器下载图像,将其读入位图并将其显示在 ImageView 上

这在大多数情况下都很好用,但每隔一段时间,它就会经历这个过程(有一个 ProgressDialog 说“正在获取图像......”),一旦完成,什么都不会显示。logcat 中没有任何东西似乎与此无关。

这是代码:

即使没有显示任何内容,Resp 内容长度也总是报告正确的大小,但仍然没有显示任何内容。

此代码是从 AsyncTask 调用的,但一次只能调用 1 个任务。

这让我发疯,我不知道为什么它一直这样做。

编辑:这是设置 imageView 的代码