0

我目前正在尝试在我的程序中实现某种搜索系统,并想使用索引,但我在 Objective-C 方面还很新。主要思想是有一个“搜索”命令或文本框,当我输入一个单词时,它会显示包含该单词的所有项目。所有这些“项目”将按字母顺序列在 .txt 文件中(希望如此)。任何帮助表示赞赏。

4

2 回答 2

1

您需要将 .txt 文件读入一个NSSet或其他一些集合类,然后您可以使用以下内容进行搜索:

[words filterUsingPredicate:[NSPredicate predicateWithFormat:@"SELF contains[c] 'word'"]];

(有关详细信息,请参阅谓词指南)。

于 2012-06-27T11:35:20.007 回答
1

理想的情况是,如果文本文件很大并且您想按每个条目的前导字符进行索引,则创建一个“涂料向量”,其中涂料矢量中的每个条目都包含该行的前几个字符,后跟该行开始的文件偏移量。请注意,一个涂料向量条目可以覆盖许多文件行,因为它就像字典中的索引选项卡一样。

但是,如果您想在文件的一行中搜索单词,最好使用 SQL 数据库或某些KWIC方案。

于 2012-06-27T12:13:22.350 回答