问题标签 [inputstreamreader]

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

java - HttpURLConnection 响应不正确

使用以下代码发出获取请求时:

得到的响应完全是荒谬的(例如���:ks�6��﯐9�rђ� e��u�n�qש�v���"uI*�W��s)

但是我可以在 Wireshark 中看到响应是 HTML/XML,与上面的字符串完全不同。我尝试了无数不同的方法来解析 InputStream,但每次都得到相同的结果。

请注意:这仅在 HTML/XML 时发生,纯 HTML 有效。

为什么以这种格式返回响应?

提前致谢!

=== 已解决 ===

嘎,明白了!

服务器在响应包含 XML 时对其进行压缩,因此我需要使用 GZIPInputStream 而不是 InputSream。

不管怎么说,还是要谢谢你!

0 投票
1 回答
4037 浏览

java - 如何修复 java.io.FileNotFoundException: 响应: '404: Not Found' for url: 'http://localhost:7001/Socket-war/Servlet'

我正在使用下面的代码从我的 Java 类中调用一个 servlet:

获得例外:

一切都很好; 我以前也在我的其他程序中使用过它;但现在引发异常...

有人告诉我为什么???任何建议或建议都将是非常可观的。

谢谢!!!

0 投票
1 回答
6545 浏览

java - NullPointerException 与 InputStreamReader 使用 getResourceAsStream

我正在尝试从我的程序的 JAR 存档中读取一个文本文件。调用该方法时出现空指针异常。我找不到很多如何在网上工作的例子,它们都很像我正在使用的。

当我尝试运行此代码时出现此错误:$ java -jar accface-0.1-test8.jar help

0 投票
1 回答
547 浏览

java - 从 grails 中的 @Context HttpServletRequest 请求获取新的 request.getInputStream()

当流在链中某处被读取时,我无法看到如何从流中读取。

这是我的功能

我有一个 json 数据 POST(有效负载、正文)和一个查询参数(用于测试)

请求变量可以访问参数但是当我尝试从流中读取

stream.available() 返回 0,如果我尝试从流中获取任何内容,它会关闭它。

有没有办法内联覆盖输入流阅读器,这样链上的任何内容都不会从中读取,我可以在本地使用它。

0 投票
1 回答
913 浏览

java - InputStreamReader 中的 UTF-8 编码

我正在使用openCSV生成CSV 文件,并使用OutputStreamWriter将该文件附加到http response

这里最大的问题是,例如'€'在下载的 CSV 文件中是'‚¬ '。显然编码是错误的,但我已将其设置为'UTF-8'。此外,我将 pom.xml 中的编码设置为“UTF-8”。

有什么建议么?

0 投票
2 回答
267 浏览

java - 无法从网页响应中读取字节 (amf)

我正在尝试编写一个可以从网页响应中读取不同类型编码的程序。现在我正试图弄清楚如何成功读取 AMF 数据的响应。发送它没问题,使用我的 HttpWrapper,它可以很好地获取响应字符串,但是许多字符在翻译中丢失了。为此,我试图以字节形式接收响应,然后转换为可读文本。

我得到的最重要的事情是字符在翻译中迷失了,字面意思。我使用了一个名为 Charles 3.8.3 的程序来帮助我了解我应该在响应中看到什么,无论是十六进制还是 AMF。对于普通字符通常没问题,但每当看到非 unicode 字符时,我总是得到“ef bf bd”。我读取 HTTP 响应的代码如下:

然后我尝试将其转换为十六进制,如下所示:

我的输出是: 0000000001000b2f312f6f6e526573756c7400046e756c6c00000**bf** 而查尔斯 3.8.3 是: 0000000001000b2f312f6f6e526573756c7400046e756c6c00000

我对如何解决这个问题束手无策,所以任何帮助将不胜感激!感谢您的时间

0 投票
1 回答
73 浏览

java - 无法接收服务器完整响应

我正在使用Java Socket Programming来接收服务器响应,我正在使用 achar array并使用read()方法读取其中的每个响应:

问题是有时我无法从服务器收到完整的响应,而不是收到一半的响应,然后收到另一半的响应。

值得一提的是:

1-受影响的反应比其他反应有点大,但我确信它不会超过1000窝。

2-我很确定服务器端工作正常,它发送完成的响应。

3-不存在任何可能导致该行为的终止符。

0 投票
1 回答
435 浏览

java - InputStreamReader 的 HttpsURLConnection 和字符集?

在下面的代码中:

An是由InputStreamReader构造UTF-8setRequestPropertyHttpsURLConnection但是,我认为代码确实需要CharSet从响应中获取。但这似乎是一个先有鸡还是先有蛋的问题。

是否可以检索CharSet在其响应中实际使用的服务器(而不是将其设置为我 {wished|hoped} 的)?

0 投票
2 回答
334 浏览

java - Java InputStreamReader 不变档

这是我的代码:

我已经调试过了,它会遍历所有内容并在换行符上打印每个字符,但是在读取最后一个字符后它会一直停止。我已经简单地输入asdfasdf并复制了独立宣言并粘贴了它。它一直运行到结束,然后停止。

它甚至不像是一个无限循环,因为我在代码的每个部分都放了一个 System.out.print("!@#$%") ,它就停止了……我的代码中没有无限循环。我很确定InputStreamReader-- reader-- 卡在它自己的无限循环中,因为它永远不会返回-1。事实上,当它结束时它永远不会返回任何东西(尽管它在循环中返回正确的整数/字符)。

有谁知道发生了什么或者有没有人遇到过类似的问题?有没有办法解决这个问题(不要说 BufferedReader 因为我需要读取带有多个换行符的文本,而 BufferedReader 搜索第一个\n,所以我不能使用它)?

编辑:

我尝试读取字符缓冲区,然后使用字符串生成器......什么都没有。

回答:

您必须提供一个会打破循环的字符(否则请参阅@default locales 的答案)。

这是我的代码演变成的内容:

Alt + 1返回(至少在 Windows 上)返回笑脸图标,但你可以做任何你想要的组合键,你所要做的就是找出 java 中的 char 并做while ((ch = reader.read()) != (char)charNumber.

0 投票
1 回答
621 浏览

java - Java:使用 avconv 命令获取视频文件的持续时间

我正在尝试使用 bash 命令使用 Java 获取视频文件的持续时间

当我刚刚在终端中输入上述命令时,终端中正好显示一个输出行,显示如下所示的持续时间:

现在我想从 Java 运行这个命令并将输出的持续时间作为字符串接收。我的代码如下:

但是,这会返回null。因此, 的值result被改变了,result = in.readLine())但是,而不是实际的终端输出,result = null被设置了。

所以in.readLine())似乎没有接收到命令的输出,即使当我在那里输入命令时,这在终端中完美输出。

为什么 Java 不能读取这个终端输出?