安卓从2个不同的文件中读取

问题描述:

在我的Android应用程序即时试图从2个不同的文件设置2个文本视图名称,但由于某种原因,第一个文本视图被设置为第二个文件信息“成分2”和第二个文本视图没有被显示在所有?我是否在设置和打开我的文件的方式做错了什么?安卓从2个不同的文件中读取

public class GroceriesActivity extends AppCompatActivity { 
    public TextView groceryname1, groceryname2, groceryname3, groceryname4; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_groceries); 


     groceryname1 = (TextView) findViewById(R.id.grocery1); 
     groceryname2 = (TextView) findViewById(R.id.grocery2); 
     groceryname3 = (TextView) findViewById(R.id.grocery3); 
     groceryname4 = (TextView) findViewById(R.id.grocery4); 

     String message; 
     String message2; 
     FileInputStream fis1 = null; 
     FileInputStream fis2 = null; 
     FileInputStream fis3 = null; 
     FileInputStream fis4 = null; 
     try { 
      fis1 = openFileInput("Ingredient1"); 
     } catch (FileNotFoundException e1) { 
      e1.printStackTrace(); 
     } 
     InputStreamReader isr = new InputStreamReader(fis1); 
     BufferedReader br = new BufferedReader(isr); 
     StringBuffer sb = new StringBuffer(); 
     try { 
      while ((message = br.readLine()) != null) { 
       sb.append(message); 
      } 
     } catch (IOException e1) { 
      e1.printStackTrace(); 
     } 
     groceryname1.setText(sb.toString()); 
     try { 
      fis1.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

     try { 
      fis2 = openFileInput("Ingredient2"); 
     } catch (FileNotFoundException e1) { 
      e1.printStackTrace(); 
     } 

     InputStreamReader isr2 = new InputStreamReader(fis2); 
     BufferedReader br2 = new BufferedReader(isr2); 
     StringBuffer sb2 = new StringBuffer(); 
     try { 
      while ((message2 = br2.readLine()) != null) { 
       sb2.append(message2); 
      } 
     } catch (IOException e1) { 
      e1.printStackTrace(); 
     } 
     groceryname2.setText(sb2.toString()); 
     try { 
      fis2.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 


    } 
} 

从而tldr我尝试设置textview1为ingredient1和textview2作为ingredient2但现在textview1被设置为ingredient2和textview2并未正在改变

编辑:修复该错误IM现在具有后textview1和textview2被设置为第一要素

+0

你能提供结果截图吗? – Boukharist

+0

https://gyazo.com/f02d93c5e6db3c5d4b044d2514f99d90 –

尝试改变

sb.append(message2); 

sb2.append(message2); 
+0

我改变了它把文本从textview 1和textviww 2 –

+0

成分1,你确定这两种成分是不一样的吗? – StudioX