按下按钮时如何从资产文件夹中读取随机文本文件?

京东代码

我正在尝试构建一个应用程序,每次按下按钮时都会显示一个随机文本文件。我已经想出了如何从资产文件夹中获取单个文本文件,但我无法弄清楚如何让应用程序随机选择一个。我需要添加什么才能允许这样做?

我对这个有点陌生,并且一直试图找到一个解释,但到目前为止没有运气。

public class MainActivity extends AppCompatActivity {

Button random_story;

TextView story_text;

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

    random_story = (Button) findViewById(R.id.random_story);

    story_text = (TextView) findViewById(R.id.story_text);

    random_story.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String text = "";
            try {
                InputStream is = getAssets().open("1.txt");
                int size = is.available();
                byte[] buffer = new byte[size];
                is.read(buffer);
                is.close();
                text = new String(buffer);
            } catch (IOException ex){
                ex.printStackTrace();
            }
            story_text.setText(text);
        }
    });

}

}

目前代码总是得到“1.txt”。资产文件夹包括 1、2、3、4、5 等,我希望按下按钮随机选择其中之一。

Rohit5k2

生成一个随机并使用它

Random r = new Random();
int fileStart = 1; // if first file name is 1.text
int fileEnd = 11; // if last file name is 10.txt
int randomFile = r.nextInt(fileEnd - fileStart) + fileStart;

现在使用它

InputStream is = getAssets().open(randomFile + ".txt");

注意:此解决方案仅在文件名按顺序排列时才有效。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Kotlin(Android)中以字符串形式读取文本资产(资产文件夹中的文本文件)

每次按下按钮时,如何在文本文件中打印新行?

如何从Android Studio中的资产读取文本文件?

如何在 Windows 上读取文件夹中的文本文件并写入 Kafka Topic

如何解决从文件夹中读取文件列表的文本文件以创建数据框行的问题

PowerShell逐行读取文本文件并在文件夹中查找丢失的文件

Eclipse中无法读取src文件夹中的文本文件

如何创建多个文件夹并通过从文本文件中读取行来命名它们?

如何使用StorageFolder从自定义文件夹或位置读取文本文件?

从多个文件夹中的多个文本文件读取特定行

读取资源文件夹中的JSON或文本文件

从多个文件夹中读取多个文本文件

Javascript:从项目文件夹中读取文本文件到字符串

从Android上的文件夹中迭代和读取文本文件

如何在 .NET 项目文件夹中创建文本文件,而不是在默认情况下的 bin/Debug 文件夹中

如何重命名子文件夹或zip文件中的文本文件

如何从文本文件中给定的路径创建文件夹和文件

在go中读取文本文件中的随机行

Bash脚本读取文本文件中的随机行

从文本文件中读取随机块

如何检查文本文件的文件夹中是否有重复的URL

如何打包和引用资源文件夹中的文本文件

如何自动打开给定文件夹中的所有文本文件?

如何从文件夹中删除空白文本文件?

如何在子文件夹中搜索特定的文本文件

如何逐步“ cd”到文本文件中的所有文件夹?

找不到目录文件夹内文件夹中的python文本文件

如何读取文件夹中存在的所有Zip文件,并创建包含所有内容的新文本文件

从资产文件夹中读取音乐