在android中单击按钮时打开多个文件中的文本文件

在android中单击按钮时打开多个文件中的文本文件,android,android-studio,Android,Android Studio,我想用android stodio创建一本书 例如:我想当我点击第一个季节按钮打开text1.txt文件时,当我点击第二个季节按钮打开text2.txt文件时,其余如我所说。 我不想为每一页做一个活动。 我想使用开关箱来获取按钮id,并根据该id打开文本文件。 我只是想知道如何使用switch case创建这个应用程序。 我将此代码用于打开txt文件: TextView txtView = (TextView)findViewById(R.id.hellotxt); InputStre

我想用android stodio创建一本书 例如:我想当我点击第一个季节按钮打开text1.txt文件时,当我点击第二个季节按钮打开text2.txt文件时,其余如我所说。 我不想为每一页做一个活动。 我想使用开关箱来获取按钮id,并根据该id打开文本文件。 我只是想知道如何使用switch case创建这个应用程序。 我将此代码用于打开txt文件:

TextView txtView = (TextView)findViewById(R.id.hellotxt);

    InputStream inputStream = getResources().openRawResource(R.raw.nitish);

    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

    int i;
    try {
        i = inputStream.read();
        while (i != -1)
        {
            byteArrayOutputStream.write(i);
            i = inputStream.read();
        }
        inputStream.close();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    txtView.setText(byteArrayOutputStream.toString());
考虑一下我的按钮的名称是 第一季,第二季,第三季,第四季 我的文本文件的名称是 txt1,txt2,txt3,txt4
谢谢你帮了我诸如此类的忙你是说

Map<Int, String> lookupTable = new HashMap<>();

lookupTable.put(R.id.season1, "txt1");
lookupTable.put(R.id.season2, "txt2");
// etc


for (Map.Entry<String,String> entry : lookupTable.entrySet()) {  
     findViewById(entry.getKey()).setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
               txtView.setText(readBookPageFromFile(entry.getValue());
          }

})
}

其中readBookPageFromFile是上述代码,文件名作为参数