当前位置: 首页 > 知识库问答 >
问题:

从android文本文件阅读时随机化问题数组

皇甫智明
2023-03-14

https://github.com/gitssk/quizfun/blob/master/res/raw/Questions.txt

 private void loadQuestions() throws Exception {
        try {
        InputStream questions = this.getBaseContext().getResources()
                .openRawResource(R.raw.questions);
        bReader = new BufferedReader(new InputStreamReader(questions));
        StringBuilder quesString = new StringBuilder();
        String aJsonLine = null;
        while ((aJsonLine = bReader.readLine()) != null) {
            quesString.append(aJsonLine);
        }
        Log.d(this.getClass().toString(), quesString.toString());
        JSONObject quesObj = new JSONObject(quesString.toString());
        quesList = quesObj.getJSONArray("Questions");
        Log.d(this.getClass().getName(),
                "Num Questions " + quesList.length());
        } catch (Exception e){

        } finally {
            try {
                bReader.close();
            } catch (Exception e) {
                Log.e("", e.getMessage().toString(), e.getCause());
            }

        }


    }







https://github.com/gitssk/quizfun/blob/master/src/ssk/quizfun/QuizFunActivity.java

共有1个答案

卞俊哲
2023-03-14

我不会发布太多代码,因为我认为你应该自己尝试。其实没那么难。不过我会给你一个方法。

您有queslist=quesobj.getJSONArray(“questions”);。所以queslist是一个问题列表,它是一个JSONArray。你想洗牌这个。只要这样做:

>

  • 获取queslist数组的长度。我们叫它len.
  • 创建一个名为quesOrder的简单arrayList,该arrayList包含整数0 to Len

    List<Integer> quesOrder = new ArrayList<>();
    for (int i = 0; i <= len; i++)
    {
     quesOrder.add(i);
    }
    

  •  类似资料:
    • 主要内容:文件定位函数rewind和fseek,文件的随机读写前面介绍的文件读写函数都是顺序读写,即读写文件只能从头开始,依次读写各个数据。但在实际开发中经常需要读写文件的中间部分,要解决这个问题,就得先移动文件内部的位置 指针,再进行读写。这种读写方式称为 随机读写,也就是说从文件的任意位置开始读写。 实现随机读写的关键是要按要求移动位置指针,这称为文件的定位。 文件定位函数rewind和fseek 移动文件内部位置指针的函数主要有两个,即 rewind(

    • 问题内容: 我想从文本文件中读取文本。在下面的代码中,发生异常(这意味着它进入了该块)。我将文本文件放在应用程序文件夹中。我应该在哪里放置此文本文件()以便正确阅读? 问题答案: 我假设你的文本文件在SD卡上 //Don’t hardcode “/sdcard” File sdcard = Environment.getExternalStorageDirectory(); //Get the t

    • 问题内容: 我正在尝试读取“ file.txt”,然后使用Golang将内容放入变量中。这是我尝试过的… 文件已成功读取,并且从 os.Open 返回的返回类型为 * os.File 问题答案: 这取决于您要执行的操作。 它输出&{0xc082016240}的原因是因为您正在打印文件描述符()的指针值,而不是文件内容。要获取文件内容,可以从文件描述符中获取。 要将所有文件内容(以字节为单位)读取到

    • 上面几节生成了随机访问文件并将数据写入这个文件中。本节要开发一个程序,顺序读取这个文件.只打印包含数据的记录。该程序还有另一好处,将在本节最后说明,读者不妨先猜猜看。 istream 的函数 read 从指定流的当前位置向对象输入指定字节数。例如,图 14.14 中下列语句: inCredit.read(reinterpret_cast<char *)(&client), sizeof(clien

    • 本文向大家介绍php从文件夹随机读取文件的方法,包括了php从文件夹随机读取文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php从文件夹随机读取文件的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的php程序设计有所帮助。

    • 我试图开发一个刽子手作为作业,但无法从文本文件中随机获得一个单词(其中有各种单词,每个单词之间用空格分隔)。我编写了一个代码来获取一个随机单词,但无法选择一个单词并用示例字符串(string w=“this”)替换它我在“Function()”中找到了。