【发布时间】:2015-06-11 21:26:24
【问题描述】:
我是 Java 编程新手,遇到了这个问题:
我正在创建一个程序来读取 .csv 文件,将其行转换为对象,然后操作这些对象。 更具体地说,应用程序读取每一行给它一个索引,并从这些行中读取某些值并将它们存储在 TRIE 树中。 然后应用程序可以从存储在树中的值中读取索引,然后检索相应行的完整信息。
我的问题是,尽管我最近几天一直在研究,但我不知道如何在二进制文件中编写这些结构,也不知道如何读取它们。 我想在二进制索引文件中写入行(及其索引),并且只读取我从 TRIE 中检索到的确切索引。
对于树的写作,我一直在寻找这样的东西(在 C 中)
fwrite(tree, sizeof(struct TrieTree), 1, file)
对于“二进制索引文件”,我正在考虑编写 TRIE 之类的对象,并且可能会读取每个对象,直到我读到足够多的内容以达到相应的索引,但这可能效率不高。
概括地说,我需要帮助在二进制文件中写入和读取对象以及如何创建索引文件的解决方案。
【问题讨论】:
-
您要查找的术语是serialization。
-
你能告诉我们更多关于你想要存储的对象的数量吗?根据数字,一个简单的 HashMap 可以为索引做。
-
@Marged 我要存储的对象数量可能会有所不同。我想专门存储 3 个 TRIE,其他对象取决于用户的输入。我目前的测试文件有大约 30 个对象要存储,除了 TRIE。
标签: java binaryfiles