java - java中可以随机访问对象吗?

标签 java object random-access objectinputstream

基本上我有一个字符串对象文件。我用Java ObjectOutputStream来存储对象。是否可以随机访问对象(字符串),比如说如果我想访问第 11 个对象,我可以以某种方式跳转到该位置,而不必使用 readObject()第 11 次循环到该位置。如果我想跳回来,我也可以这样做,而不必再次从头开始循环。谢谢。

正如建议的那样,我想我可以以某种方式使用skipBytes()方法来实现某种随机访问。虽然我不能保证我的对象具有固定大小,但是如果我可以在文件中保留这些对象的位置数组,我可以使用该数组作为索引并使用skipBytes() 进行随机访问。所以问题仍然存在,无论如何,当我实际编写对象时我可以知道对象的大小,以便我可以以某种方式记录位置?

最佳答案

执行此操作的唯一方法是将对象单独存储在它们自己的流中,可以在同一文件中,也可以在不同文件中。

最简单的做法可能是将对象存储在列表中,然后一次读取该列表,并随机访问该列表。

关于java - java中可以随机访问对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5993112/

相关文章:

java - 我尝试在办公室使用 JAVA ping www.google.com,但 ping 不一样

java - 使用 TwitterStream 检索推文语言或按语言过滤

python - 为什么在值测试时包含对象的列表为 False?

python - pop、__delitem__、__delslice__、__setslice__、insert 等的列表实现

c++ - 附加随机访问文件

java - 如何确定给定字符串是否为 .xml 文件

powershell - 无法从 Windows PowerShell 命令提示符运行 Java

javascript - JavaScript 中的继承 : How can I call the object parent?

C++ 类对象指针和访问成员函数

python - 如何检查文件对象是否是随机访问