匹配的話我創建一個遊戲,並已經得到了在那裏我有字符串查找,看他們是否確實在words.txt文件,我想導入定義的話點。名爲.txt文件
我知之甚少文件IO在客觀C/IOS和搜索使我事做SQLite和Lucene的。
什麼是一個簡單的字典查詢,以確認字符串,最好的辦法是從words.txt實際字典中的單詞?
匹配的話我創建一個遊戲,並已經得到了在那裏我有字符串查找,看他們是否確實在words.txt文件,我想導入定義的話點。名爲.txt文件
我知之甚少文件IO在客觀C/IOS和搜索使我事做SQLite和Lucene的。
什麼是一個簡單的字典查詢,以確認字符串,最好的辦法是從words.txt實際字典中的單詞?
這不會有什麼使用SQLite,除非你把你的文件中的SQLite數據庫,你沒有提到。最快的方式做你的願望會是這樣:
加載該文件到內存(除非這是你不希望一次加載,在這種情況下使用NSFileHandle一個巨大的文件):
NSError* err;
NSString* words = [NSString stringWithContentsOfFile:@"words.txt" encoding:NSUTF8StringEncoding error:&err];
// check err!
if (err) {
// handle errors
}
將單詞轉移到一個集合,比如說一個NSArray的實例。我們假設的文字,被昏迷文件中分離:
NSArray* wordsArray = [words componentsSeparatedByString:@","];
檢查你的話是數組中:
NSString* wordWeLookFor = @"FooBar";
NSUInteger index = [wordsArray indexOfObjectPassingTest:
^(id obj, NSUInteger idx, BOOL *stop) {
*stop = [(NSString*)obj isEqualToString:wordWeLookFor]
return *stop;
}];
if (index != NSNotFound) {
// Found!
} else {
// Not found!
}
我假設你想避免可能出現的問題用複合詞,這就是爲什麼步驟2和3是必要的。如果你沒有太多的話你的文件,你覺得幸運,你可以簡單地使用rangeOfString方法並跳過步驟2和3。
多少單詞不words.txt包含哪些內容? – sch 2012-03-15 17:31:07