java - 如何检索以逗号作为分隔符的空格行?

标签 java android

我的 game.txt 文件中有此记录

menard,menard mabunga,0 
francis,francis mabunga,0 
angelica,francis mabunga,1

我使用此代码访问该文件并将其存储在数组列表中;

Scanner s = new Scanner(getResources().openRawResource(R.raw.game));
        ArrayList<String> list = new ArrayList<String>();

        while (s.hasNext()){
            list.add(s.next());
        }
        s.close();

并使用该函数加载随机行;

public static String randomLine(ArrayList list) {
        return (String) list.get(new Random().nextInt(list.size()));
    }

当我尝试使用 System.out.println(randomLine(list)); 打印 randomLine 函数的结果时输出是mabunga,0仅。

现在,如何检索以逗号作为分隔符的空格行?

最佳答案

您正在阅读单词而不是行。使用 nextLine() 而不是 next()。所以,这应该是您的代码:

Scanner s = new Scanner(getResources().openRawResource(R.raw.game));
ArrayList<String> list = new ArrayList<String>();

while (s.hasNext()){
    list.add(s.nextLine()); // Change here!!
}
s.close();

如果目标是读取行,我更喜欢 BufferedReader 而不是 Scanner

关于java - 如何检索以逗号作为分隔符的空格行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18157694/

相关文章:

图像的 Javascript md5 哈希与 Java 进行比较

java - 可以停止使用 httpConnection.connect() 连接到 URL 的线程吗?

Swing 中的 Java 创 build 计模式

android - 如何在 Java (Android) 中获取整数的长度

java - 找不到参数的方法实现()[org.jetbrains.kotlin :kotlin-stdlib-jdk7:1. 3.50]

android - 我可以在用户安装 apk 文件时创建数据库吗

Java 包含一个字符的子字符串

java - 将字符串(使用正则表达式)转换为可用对象

java - ANDROID:回收者 View 内的多个卡片 View

android - 数据未显示在 ListView 中