【问题标题】:Data structure for dictionary字典的数据结构
【发布时间】:2011-03-05 01:13:13
【问题描述】:

我有 .rtf 格式的塞尔维亚英语单词,我需要从这个文档中提取它并将它们放入一些数据结构中。 我知道使用数据库,但我不知道它是否适合这种情况。例如,我有斜体字,不知道如何将其放入数据库(也许放入 标签内?)。是否有其他数据结构用于存储格式化文本(粗体和斜体)?

【问题讨论】:

  • 你能更集中你的问题吗?您想阅读 RTF 文档吗?您想将塞尔维亚语单词映射到英语(反之亦然)吗?格式化真正影响什么?如果您只想将塞尔维亚语映射到英语单词,在内存中,您可以使用Map 实现之一,例如java.util.HashMap。如果你想让这些东西持久化,那么使用数据库(甚至像 sqlite3 这样的东西)将是一种方法。
  • 这是我的文件示例:scribd.com/doc/50060017/multi 我需要从该文档中提取并将这些单词保存到数据库中..

标签: java database data-structures text-extraction


【解决方案1】:

这取决于您在数据库中需要的粒度。你能根据格式的含义定义一个一致的数据模型吗?

class Entry {
    String serbianWord;
    String serbianPhonetic;
    String serbianOtherElementOfDictionary;
    String englishWord;
    String englishPhonetic;
    String englishOtherElementOfDictionary;
}

理想情况下,格式(视图)和数据库(模型)应该分开。

但如果这导致手头的问题过于复杂,那么存储标记数据是一个合理的选择。

【讨论】:

    【解决方案2】:

    这取决于整个文本是带下划线/斜体还是只是部分。如果整个文本带有下划线/斜体,您可以在数据库表中添加两列,如“is_bold”和“is_italic”。否则,我建议使用某种标记(HTML 标签或Markdown)。我专注于数据库解决方案,因为我假设您希望永久存储此字典。

    问候

    西蒙

    【讨论】:

      猜你喜欢
      • 2013-12-10
      • 2021-01-12
      • 1970-01-01
      • 2011-04-13
      • 2023-04-08
      • 2016-06-21
      • 1970-01-01
      • 1970-01-01
      • 2012-04-18
      相关资源
      最近更新 更多