java - 从 Assets 文件夹中的文本文件加载数组 (Android)

标签 java android eclipse

请,

我知道这个问题已被问过很多次,但我仍然无法让我的代码运行。

我的 Assets 文件夹中有一个名为 Words.txt 的文本文件。该文本文件的每一行中每行一个单词,没有空行。我想将每个单词放入一个数组中。

首先我尝试使用扫描仪,但在阅读了许多 stackoverflow 线程后,我发现我需要使用 AssetManager。

这是我尝试过的:

AssetManager assetManager = getAssets();
InputStream inputStream = assetManager.open("words.txt");

它给了我错误消息:默认构造函数无法处理隐式 super 构造函数抛出的异常类型 IOException... 在我做任何其他事情之前。我不知道这意味着什么。

另外,查看api,似乎InputStream只能读取字节。如何从文本文件中读取单词?

这些线程是压倒性的,因为似乎每个答案都提出了不同的方法,使用 InputStreams、BufferedStreams、FileInputStreams、File、Res 文件夹、Asset 文件夹和许多我不熟悉的其他语言。我刚刚学习开发 Android 应用程序,java 经验有限。

最佳答案

您可以按如下所示进行操作:

    try {
        BufferedReader bReader = new BufferedReader(new InputStreamReader(getAssets().open("file.txt")));
        ArrayList<String> values = new ArrayList<String>();
        String line = bReader.readLine();
        while (line != null) {
            values.add(line);
            line = bReader.readLine();
        }
        bReader.close();
        for (String v : values)
            Log.i("Array is ", v);
    } catch (IOException e) {
        e.printStackTrace();
    }

关于java - 从 Assets 文件夹中的文本文件加载数组 (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20781060/

相关文章:

java - 如何从 Telegram 信使 channel 获取个人资料图片?

java - 如何在 Sublime Text 2 中运行 Java 代码?

Android:日期时间字段中的字符串值?

java - 如何以编程方式获取在 Eclipse 中打开的文件的元数据?

android - NoClassDefFoundError 使用 Android 应用程序、Maven 和 Eclipse 开发库

java - 指定组件标题位置?

java - toString 类中的 Return 语句

android - 如何为 LinearLayout 中的 Fragments 分配比例尺寸?

java - 无法在 Android 中启动其他 Activity

java - Eclipse 类路径中的 combineaccessrules 是什么意思?