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