我正在尝试制作一个简单的字典,它可以从 txt 文件中搜索单词。我创建了txt文件并存储了一些英语单词。我想将单词写入 EditText。然后,这个单词就会被找到并显示在TextView上。这是我的代码。它显示整个 txt 文件。我怎样才能找到具体的单词?
public class MainActivity extends Activity {
//creating variables
TextView myText;
EditText myEdit;
Button myButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//initializing the TextView EditText and Button
myText=(TextView) findViewById(R.id.idTextView);
myEdit=(EditText) findViewById(R.id.idEditText);
myButton=(Button) findViewById(R.id.idButton);
myButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String saveData=myEdit.getText().toString();
try{
myText.setText(readfile());
}catch(IOException e){
e.printStackTrace();
}
}
});
}
private String readfile()throws IOException {
String str="";
InputStream is = getResources().openRawResource(R.raw.translate);
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line=reader.readLine();
while (line!=null)
{
str = str + line + "\n";
line = reader.readLine();
}
reader.close();
return str;
}
}
最佳答案
这完全取决于您的 readFile()
的实现方式。我建议您修改它以接受 String
参数。这样,它将在文件中搜索该单词,并将其含义作为另一个 String
返回,您可以通过 setText()
将其分配给 TextView
myText.setText(readFile(saveData)));
是建议的实现方式。
在此方法中,当您逐行读取文件时,检查刚刚从文件中读取的String
是否包含所需的单词。这可以使用 contains()
方法来完成。
关于java - 我如何从android中的txt文件中读取特定文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22102199/