2014-01-26 11 views
0

我想从资产文件夹中加载文件,并使用在停用词procces一个字符串,这个INI我的代码,但我得到错误“无法从BufferedReader中转换为字符串”不能从BufferedReader中转换为字符串

public void onClick(View v) { 
    // TODO Auto-generated method stub 
    if (v.getId()==R.id.button6){ 

     StringBuilder text = new StringBuilder(); 

     try { 
      BufferedReader reader = new BufferedReader(
       new InputStreamReader(getAssets().open("Preposisi.txt"), "UTF-8")); 

      // do reading, usually loop until end of file reading 
      String mLine = reader.readLine(); 
      while (mLine != null) { 
       //process line 

       mLine = reader.readLine(); 
      } 

      reader.close(); 
     } catch (IOException e) { 
      //log the exception 
     } 

     Intent intent = new Intent(this, PreposisiRemoval.class); 
     String test = ((TextView)findViewById(R.id.textView7)).getText().toString(); 
     String[] preposisi = {text}; "GET ERROR IN THIS LINE" 
     StringBuilder resultFilter = new StringBuilder(); 

     Scanner fip1 = new Scanner(test); 
      while (fip1.hasNext()){ 
        int flag = 1; 
        String s1 = fip1.next(); 
        for (int i = 0;i<preposisi.length; i++){ 
         if (s1.equals(preposisi[i])){ 
          flag=0; 
         } 
         } 
         if(flag!=0){ 
          System.out.println(s1); 
          resultFilter.append(s1+'\n'); 
         } 

         Intent intent2 = getIntent(); 
           String count = intent2.getStringExtra("result2"); 

        intent.putExtra("resultFilter", resultFilter.toString()); 
        intent.putExtra("count", count); 
        startActivity(intent); 
        } 
     } 
} 

我得到误差在该行字符串preposisi = {}测试

+0

其中你正在从bufferedreader转换到字符串的行 –

+0

你想在行'String [] preposisi = {text};'中做什么? –

回答

0
StringBuilder text = new StringBuilder(); 

AND

String test = ((TextView)findViewById(R.id.textView7)).getText().toString(); 
String[] preposisi = {text}; "GET ERROR IN THIS LINE"; 

“测试” 或“特吨“???

+0

文本(这是从资产文件夹加载的文件) – fazhar

+0

文本是StringBuilder的一个实例,您正试图将其转换为字符串。 String [] preposisi = {test};我认为如此 – Luc

+0

我得到错误“不能从bufferedreader转换为字符串”如果使用String [] preposisi = {test}; – fazhar

0

textStringBuilder,它与String阵列不兼容。您的意思是

StringBuilder text = new StringBuilder(); 
String[] preposisi = {text.toString()}; 

或者干脆

String[] preposisi = { test }; 

0
  1. 更改您的读取循环:

    String mLine = reader.readLine(); 
    while (mLine != null) { 
        mLine = reader.readLine(); 
        text.append(mLine); //You missed this line 
    } 
    

    否则你的StringBuilder的将永远是空的。