0

我发现很少有关于此功能限制的文档。SQL 仍然有点超出我的能力范围,但是我知道它是数据存储的天赐之物。忽略这一点,使用 ? 写入文件时我有什么限制Input/Output Streams?例如,我通常发现我的项目只需要保存一个东西,一个字符串或某种数组,这对我来说很好,但是:

  • 我可以将多种类型保存到同一个文件中吗?也许,一个包含对象、字符串、双精度数、浮点数等的文件?
  • 如果是这样,从文件中读取时,我如何区分一个和另一个?

通常我使用retrieved_data = (datatype) obj_in.readObject();,那么,如果我将多种类型的数据保存到文件中,我怎么知道我得到了什么?

文档指出该方法.readObject()“从源流中读取下一个对象”。

这是否意味着它按照我保存东西的顺序存储它?

这种操作是否有标准,或者这都是有争议的偏好?

提前致谢。

4

2 回答 2

0

序列化和反序列化怎么样?使用序列化,您可以将对象值存储到文件中,并且通过使用反序列化,您可以获得存储的对象。

于 2013-05-16T18:49:54.933 回答
0

您可以使用ObjectOutputStream编写任何 Serializable 对象,它们的存储顺序与您编写它们的顺序相同,并且也应该以这种方式读取:

可以将多个对象或原语写入流。对象必须从相应的 ObjectInputstream 以与写入时相同的类型和相同的顺序读回。

(来源:ObjectOutputStream

于 2013-05-16T19:45:06.690 回答