在android中读取txt文件...找不到文件

时间:2016-05-16 00:25:57

标签: java android file load bufferedreader

这是我为同一个问题开始的第二个主题,因为我没有得到我之前问题的正确答案/工作答案。我试图从我的assests文件夹中读取一个文本文件。代码适用于桌面,但不适用于Android。我知道我需要一个上下文或资产管理器,但后来我无法获得解决方法。到目前为止,我已尝试过所有内容,但我无法找到有效的教程。我甚至将java版本更改为1.7以获得资源的尝试。我仍然是一个菜鸟,所以任何帮助都会很棒。这是阅读文件和生成单词的完整类。

public class WordGenerator {

public String randomWord;
public Random rand;
public char [] randomWordChar;


public ArrayList<String> words = new ArrayList<String>();

private Context mCtx; //<-- declare a Context reference

public void WordGenerator() {


    rand = new Random();

    String all = new String("words.txt");
    String line;


    try {

        BufferedReader br = new BufferedReader(new FileReader(("words.txt")));
        if (!br.ready()) {
            throw new IOException();
        }
        while ((line = br.readLine()) != null) {
            words.add(line);
        }
        br.close();
    } catch (IOException e) {
        System.out.println(e);
    }
        int size = words.size();
        Random rn = new Random();
        int randWord = rn.nextInt(size);
        randomWord = words.get(randWord);
        randomWordChar = randomWord.toCharArray();
    }

}

我甚至尝试过将加载过程分成不同的void类但失败了。如有可能,请帮助谢谢。这是另一个问题的链接,所以你知道答案不起作用!!

Reading a plain text file

1 个答案:

答案 0 :(得分:0)

您应该使用 android.content.Context 来使“getAssets()”方法正常工作。

观察到您正在使用 javax.naming.Context 作为上下文。