- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
来自 Java API
public class EOFException extends IOException
Signals that an end of file or end of stream has been reached unexpectedly during input.
This exception is mainly used by data input streams to signal end of stream. Note that many other input operations return a special value on end of stream rather than throwing an exception.
那么为什么数据输入流与其他输入操作如此不同?为什么它不像其他输入操作一样返回一个特殊值来表示流的结束?因为我认为异常应该只在真正特殊的情况下使用。
最佳答案
需要带外返回值来发出 EOS 信号。返回基元时会使用所有带内值,因此没有可用的带外值,因此它必须是一个异常(exception)。
同样适用于ObjectInput.readObject()
。 null
是一个带内值,因此不能用于发出 EOS 信号。
这与 InputStream.read()
不同,后者返回 -1 或字节值 -128..127。在这种情况下,-1 是带外的。
假设 readUTF()
抛出 EOFException
与其他方法对称,尽管它可能在 EOS 上返回 null。
关于java - 为什么 EOFException 主要由数据输入流使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16513498/
我编写了以下客户端-服务器对来设置一个非常简化版本的 IPSec 连接(与加密相关)。 问题是,在第二次调用 readObject() 时,即: // Receive finished
我创建了一个 Talend 作业,它执行以下操作:从表 A 中读取记录 x。将记录 x + 1.000.000 写入表 A 中。这很有效,但在 310 条记录后失败。它显然与记录中的值无关。如果我将输
我正在使用iText将html转换为pdf,当我尝试注册fontProvider时,我得到EOFException,这里是相关代码: XMLWorkerFontProvider fontProvide
以下代码在反序列化期间抛出 EOFException [in line size = in.readInt();],我很困惑为什么会发生这种情况。 import java.io.IOException
我正在使用此代码读取 Java 中的文件 import java.io.*; public class IOReadDataStreams { public static void main(
我的目标是将远程服务器中的 200 个 .jpg 文件下载到我的 Android 手机(运行 jellybeans)。为了做到这一点,我在循环中运行下面的方法,并将不同的文件名分配给文件名参数。它运行
输出正确,但后面跟着一个 EOFException。我阅读了文档,但仍然不知道如何解决这个问题 try(ObjectInputStream ois = new ObjectInputStream(ne
我有一个通过套接字向主机发送数据的客户端。有时我会得到java.io.EOFException。 问题是:我如何知道是谁导致套接字关闭?由于远程主机关闭了套接字,该异常是否总是引发? 或者也可能是内部
这个问题已经有答案了: Java FileInputStream ObjectInputStream reaches end of file EOF (9 个回答) 已关闭 9 年前。 请看下面的代码
我尝试使用 this question's answer 来获得功能实现,但出现各种错误,现在出现 EOFException,并且在调试时,似乎文件未写入。 目标是从 URL 下载图像,将其保存到内部
我正在测试 ObjectInputStream 和 ObjectOutputStream 类 尝试在缓冲流对象中扭曲两者.. File file = new File("file.lel"); //A
我使用文件来缓冲它来显示流内容(因为它可能足够大以将其保存在 RAM 中)。我有两个线程:第一个线程从服务器下载文件并将其写入本地存储,第二个线程读取该文件并显示内容。 问题是,当第二个线程到达文件末
`INFO 11:44:29,874 Listening for thrift clients... ERROR 11:47:01,471 Exception in thread Thread[Rea
我在反序列化对象时遇到此异常: 控制台输出 sending request: GET_OBJS java.io.EOFException receiving response at java.io.O
我正在使用以下代码进行发布请求 public String executeHttpPost(String uri, String data) { HttpURLConnection conn
我正在通过加密的 ByteArrayOutputStream 将一个序列化和加密的对象写入数据库到一个大对象中。我可以检索这个大对象,但无法反序列化它。 这是我编写的代码: public void a
这个问题在这里已经有了答案: java.io.EOFException while writing and reading froma servlet (2 个答案) 关闭 10 年前。 当我尝试通
我正在尝试编写一个消息传递应用程序,并且我能够发送消息(显示为服务器客户端正确显示消息)但随后将我的客户端踢出服务器。服务器打印以下错误: java.io.EOFException at java.i
我有以下问题: 这段代码... try { fis = new FileInputStream(serializedKeyIndex); in = new Ob
我正在使用随机访问文件来编写一个使用 arrayList 存储的 raf。我不知道它是否可以完成,但我正在试一试,因为它是我创建此应用程序的最佳解决方案。 这是我遇到的运行时错误: Exception
我是一名优秀的程序员,十分优秀!