问题标签 [inputstream]

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 回答
1678 浏览

java - 如何有效地将未压缩的 InputStream 转换为 gzip 格式的 InputStream?

一个用户将一个大文件上传到我的网站,我想压缩该文件并将其存储在一个 blob 中。所以我有一个未压缩的 InputStream 并且 blob 想要一个 InputStream。我知道如何使用 GZIPOutputStream 将 InputStream 压缩为 Outputstream,但是如何从 gzip 的 OutputStream 回到 blob 所需的 InputStream。

我能找到的唯一方法是使用 ByteArrayOutputStream,然后使用 toByteArray 创建一个新的 InputStream。但这意味着我在内存中有文件的完整副本。如果 JDBC 驱动程序实现也将流转换为 byte[] 也不会让我感到惊讶,所以我在内存中有两个副本。

0 投票
1 回答
3194 浏览

java - 为什么 Integer.parseInt 在看起来有效的输入上抛出 NumberFormatException?

我正在从书中做一个简单的练习,我对 java 函数 parseInt 的工作方式有点困惑。我从输入文件中读取了一行,使用 StringTokenizer 将其拆分,现在我想将每个部分解析为整数。

我在监视窗口中检查了 parseInt 函数的输入确实是一个看起来是有效整数的字符串(例如“35”)。但是,当我尝试对持有值“35”的str.charAt变量使用该函数时,会得到奇怪的结果:str

这似乎是一个可能与编码有关的问题,所以我尝试使用这种读取文件的方式来修复它:

(我已经在我的编辑器中使用 UTF-8 编码明确保存了文件),但这并没有帮助。任何想法可能是什么问题以及如何解决它?

编辑:我的样本

0 投票
4 回答
1431 浏览

java - 在 Android/Java 上,一个连接下载了多少字节?

我正在编写的一个 Android 应用程序涉及大量的内容下载(想想 podcatcher/RSS)。

我希望能够让用户知道他们下载了多少字节,这样他们就可以决定是否要使用 Wifi。

为此,我找到了一种计算应用程序读取的字节数的方法,方法是将 an 包装InputStream在一个简单的CountingInputStream.

但是,这并没有考虑数据包头和 HTTP 头等基本内容。更重要的是,它没有考虑对内容进行编码的任何压缩。

那么,我的应用程序通过网络下载了多少字节?我对上传的字节数不太感兴趣,但如果知道如何,请不要害羞。

在将输入流输入 XML PullParser 时,我采用了一种相当低级的方法。我还需要做一个类似的练习,将字节(在这种情况下为图像)直接转储到 SD 卡上。

这是最好的方法吗?我错过了什么?

0 投票
3 回答
5244 浏览

c++ - 在 C/C++ 中读取和解析行;将标记放入数组或向量或类似结构中

我必须向 ACM IPC 中的一个问题提交代码,而且您可能知道,时间非常重要。所以,我必须有效地读取这样的输入:第一行将包含相关的整数值序列,第二行将包含与另一个序列相关的整数值序列。例如:

我必须将第一行放入一个数组中,将第二行放入另一个数组中,并将两者都传递给一个函数。

我如何阅读这些内容并将其放入 C/C++ 中?我以 C 的方式思考,但我的方法将有 2 段时间......我喜欢使用 scanf 阅读,但可以根据需要进行解析。

请帮助这个新手!

0 投票
4 回答
11461 浏览

java - InputStream.read() 返回的 0 是什么意思?如何处理?

通过什么方式返回 0(读取的字节数)InputStream.read?如何处理这种情况?

更新:我的意思是返回读取字节数的方法read(byte[] b)read(byte[] b, int off, int len)

0 投票
3 回答
758 浏览

blackberry - J2ME/Java:通过线程引用 StringBuffer

这个问题可能很长,但我想提供很多信息。

概述:我正在为 Blackberry 创建一个 Stock Quotes Ticker 应用程序。但我的 StringBuffer 包含单个股票信息时遇到问题。

流程:我的应用程序通过 SocketConnection 连接到我们的服务器。服务器发出一组格式化的字符串,其中包含最新的股票交易。因此,每当发生新交易时,服务器都会发送该交易的单个股票报价。通过 InputStream,我能够读取该信息并将每个字符放在线程引用的 StringBuffer 中。通过基于char3解析,我能够确定一组股票报价/信息。

char1 - 分隔数据 char3 - 表示股票报价/信息的结束

我们的服务器发出的股票报价格式示例: stock_quote_name(char 1)some_data(char1)some_data(char1)(char3)

然后,我的应用程序会解析该股票报价以比较某些数据,并将其格式化为在屏幕上显示时的样子。当交易逐渐(缓慢)发生时,该应用程序可以完美运行。然而..

问题:当交易发生得太快且几乎同时发生时,我的应用程序无法有效处理发送的信息。StringBuffer 的内容与下一笔交易相结合。含义 一个 StringBuffer 中的两个股票信息。

字段应该是: Stock_quote_name some_data some_data

正在发生的事情的示例: Stock_quote_name some_data some_dataStock_quote_name some_data some_data

这是我这部分的代码:

据我所见,当交易发生得非常快时,当我尝试放入新数据时,StringBuffer 不会立即刷新,并且仍然具有上一笔交易的内容。

我的问题是: 你们对我如何将数据放入 StringBuffer 有任何建议,而无需将下一个信息附加到第一个内容

0 投票
3 回答
1189 浏览

c++ - 不等待 C++ 中的键盘输入(重载输入流运算符)

只是一个快速的问题。

我开发了以下代码:

这是实现:

问题是当我尝试使用重载的输入流运算符进行任何输入时,程序在输入一个值后不会等待输入 - 在一系列输入中。换句话说,这是我的主要功能:

它只是跳过它们,变量得到赋值,就像它们没有被初始化一样——除了第一个变量,它确实得到了一个值。

我的问题是如何防止这种行为?

0 投票
1 回答
1440 浏览

java - 将数据写入java中调用的grep程序的InputStream

我正在尝试将运行 diff 获得的数据处理为 java 程序中的 GNU grep 实例。我已经设法使用 Process 对象的 outputStream 获得 diff 的输出,但我目前正在让程序将此数据发送到 grep 的标准输入(通过在 Java 中创建的另一个 Process 对象)。使用输入运行 Grep 仅返回状态代码 1。我做错了什么?

以下是我到目前为止的代码:

leftPath 和 rightPath 都是 File 对象,指向要比较的文件。

0 投票
2 回答
276 浏览

database - 从数据库中读取 HTML 数据很慢?需要更好的方法吗?

我们在 mysql 中有一个 18GB 的​​表,其中有一列“html_view”存储我们在页面上显示的 HTML 源数据,但是现在从“html_view”列获取 html 数据需要花费太多时间,这使得页面加载缓慢。

我们想要一种可以简化我们现有结构的方法,以更快地从 db 或任何其他方式加载 html 数据。

我们计划的一个想法是将 HTML 数据存储在 .txt 文件中,在 db 中,我们将只存储 txt 文件的路径,并通过读取文件从该特定文件中获取数据。但是我们担心它会在我们的服务器上进行大量的读写操作,然后可能会减慢服务器的速度。

有没有更好的方法来使这种情况更快?

0 投票
2 回答
10105 浏览

java - 从 InputStreamReader (JAVA) 读取多行

我有一个 InputStreamReader 对象。我想使用一个函数调用将多行读入缓冲区/数组(不创建大量字符串对象)。有没有一种简单的方法可以做到这一点?