我想比較編輯文本的值與文件中的所有行(該文件是單詞列表)。從文本文件中讀取值並與edittext進行比較
我已經做到了這一點,
try{
final InputStream file = getAssets().open("words.txt");
reader = new BufferedReader(new InputStreamReader(file));
String line = reader.readLine();
while(line != null){
line = reader.readLine();
if(ss == line.toLowerCase()){
Toast.makeText(this, "Working!", Toast.LENGTH_SHORT)
.show();
}
else{
Toast.makeText(this, "Not found !", Toast.LENGTH_SHORT)
.show();
}
}
} catch(IOException ioe){
ioe.printStackTrace();
}
這裏ss是文本框的值。
String ss = (res.getText()).toString();
這是words.txt文件 https://raw.githubusercontent.com/eneko/data-repository/master/data/words.txt
但上面的代碼是行不通的。
編輯:
我檢查了文件是否被打開與否,這個問題是文件沒有打開。
try{
final InputStream file = getAssets().open("words.txt");
Toast.makeText(this, "File Opened", Toast.LENGTH_SHORT)
.show();
reader = new BufferedReader(new InputStreamReader(file));
String line ;
while((line = reader.readLine()) != null){
if(ss.equalsIgnoreCase(line)){
Toast.makeText(this, "Working!", Toast.LENGTH_SHORT)
.show();
TextView tv = myTextViewList.get(counter);
tv.setText(line);
}
else{
Toast.makeText(this, "Not found !", Toast.LENGTH_SHORT)
.show();
}
}
} catch(IOException ioe){
ioe.printStackTrace();
}
你是什麼意思'它不工作'?不循環?它沒有正確比較它們嗎? – Ben
我的意思是那些敬酒沒有顯示。我有2敬酒如果找到這個詞和沒有匹配的詞 –
給與Passiondroid的答案去吧,我認爲應該工作 – Ben