我需要以各种方式在 Java 中保存一些数据,到 a File
,到 a String
,到System.out
... 最后我用 3 种方法做几乎相同的事情。OutputStream
因此,我将它们更改为以 an作为参数的单个方法。我在单个 OutputStream 中写了一些东西,例如一些文本、一个序列化对象、另一个序列化对象、一些数字数据......
但现在我被困住了。我忽略了一个事实,即我无法区分所写的不同内容。我为数据创建了一个InputStream
。我Scanner
首先在该流上使用 a 来读取文本,然后尝试使用 ObjectInputStream 来读取序列化对象,但我得到一个EOFException
.
我猜扫描仪会提前读取。如何防止扫描仪提前读取。
或者更确切地说,我如何使用适当的 InputStream 为每组数据读取每组数据。