将哈希集与android中原始文件夹中的文本文件进行比较

将哈希集与android中原始文件夹中的文本文件进行比较,android,file-io,stringbuilder,hashset,Android,File Io,Stringbuilder,Hashset,我在原始文件夹中有一个哈希集和一个文本文件,包含80000多个单词。 我想将hashset的每个元素与文本文件的单词进行比较。但我在这方面遇到了一个问题 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.la

我在原始文件夹中有一个哈希集和一个文本文件,包含80000多个单词。 我想将hashset的每个元素与文本文件的单词进行比较。但我在这方面遇到了一个问题

public class MainActivity extends Activity
{ 
@Override
protected void onCreate(Bundle savedInstanceState)  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    lays=(LinearLayout)findViewById(R.id.lays);

TextView tvv=new TextView(MainActivity.this);
                try {
                    tvv.setText(onCompare(MainActivity.this, sett));
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                lays.addView(tvv); }
我比较的方法是:onCompare 文件是:data.txt

    private String onCompare(Context context, HashSet set) throws IOException
{
    InputStream is = context.getResources().openRawResource(R.raw.data);
    String ch=new String();
     StringBuilder text = new StringBuilder();
    Iterator<String> it=set.iterator();
    String s;
    while(it.hasNext())
    {
        BufferedReader br=new BufferedReader(new InputStreamReader(is));

         s=it.next().toString();

        while((ch=br.readLine())!= null)
    {
        if(s.equals(ch))
        {
        text.append(ch);
        text.append('\n');
            break;
        }
    else continue;
    }


}
    return text.toString();
}
私有字符串onCompare(上下文,哈希集)抛出IOException
{
InputStream=context.getResources().openRawResource(R.raw.data);
字符串ch=新字符串();
StringBuilder text=新的StringBuilder();
Iterator it=set.Iterator();
字符串s;
while(it.hasNext())
{
BufferedReader br=新的BufferedReader(新的InputStreamReader(is));
s=it.next().toString();
而((ch=br.readLine())!=null)
{
如果(s等于(ch))
{
text.append(ch);
text.append('\n');
打破
}
否则继续;
}
}
返回text.toString();
}

我正在onCreate方法中的名为tvv的文本视图中打印这个StringBuilder对象。但是文本视图中没有打印任何内容。我认为if条件有问题。

当然,您的条件似乎有问题。尝试将
if(s.equals(ch))
替换为
if(s.contains(ch))

while((ch = br.readLine())!= null) {
    if(s.contains(ch)) {
        text.append(ch);
        text.append('\n');
            break;
    }
}