1
3
听起来xml序列化可能是您的最佳选择。它非常易于实现、易于存储、易于查看、易于编辑等等。 例如,您有一个定义了一些公共财产的类AAA:
和一个集合类:
你 填满 您的收藏如下:
序列化 到xml很简单:
Xml将如下所示:
反序列化 from xml也很简单:
如果使用xml序列化持久化对象,则可以搜索某些数据,而无需将它们实际加载到内存中。例如,您可以搜索xml文件或查询数据库中的记录,并只反序列化找到的项。 当然,XML序列化不同于二进制序列化。例如,XML序列化仅序列化公共财产。或者,对于没有无参数构造函数的类,您将遇到一些困难。XML序列化显然有一些细节,但大多数细节都是可以解决的。尽管二进制序列化没有所有这些问题,而且速度更快,但它也有自己的问题,通常不适合长期存储。 链接: |
2
1
在您的情况下,考虑到项的数量有限,允许您将它们全部保存在内存中,将二进制序列化到平面二进制文件可能是一个很好的解决方案。退房
您可以为内存中的项目使用常规列表、有序列表或哈希集。如果你进行平等搜索,那么散列集将是最好的选择。如果你在同一个 唯一的 字段,使用有序列表或字典。 此外,除非您有极端的性能要求,否则考虑到要搜索的项目数量很少(根据您的信息,最多几百个),在常规列表上进行简单的linq查询就可以了。 |
Giffyguy · 如何限制在构造向量后调用'resize()'? 2 年前 |
vytaute · 返回表类型时Oracle函数中的类型错误 2 年前 |
bbgghh · 在scala中连接两个列表时如何处理不匹配的键 2 年前 |
dev-chicco · Laravel系列寻找常见物品 2 年前 |
Mitch · Laravel-雄辩的单品合并系列 6 年前 |
Kieran · 为什么类X可以从集合继承<X> 6 年前 |
John · 如何在不返回集合本身的情况下返回集合的数据? 6 年前 |
Niklas Mertsch · 在泛型集合中实现移除(对象o) 6 年前 |