gpt4 book ai didi

java - 从 Android 原始资源文件中扫描句子

转载 作者:搜寻专家 更新时间:2023-11-01 08:05:22 24 4
gpt4 key购买 nike

我在 Android res/raw 文件夹中添加了一个示例文本文件,我正在尝试将该文件的每一行添加到一个字符串数组列表中。

例如,假设示例文本文件包含以下行

Sample Line One

Sample Line Two

Sample Line Three

我想将这三个句子作为三个字符串添加到一个字符串数组列表中。我尝试了以下代码:

List<String> sampleList = new ArrayList<String>();    
Scanner s = null;
s = new Scanner(getResources().openRawResource(R.raw.sample));
while (s.hasNextLine()){
sampleList.add(s.next());
}
s.close();

上面的代码将每个单词添加到数组列表中,结果数组大小为 9,而不是将每个句子添加到预期数组大小为 3 的数组中。感谢您的帮助。

最佳答案

使用Scanner#nextLine()而不是 Scanner#next()

sampleList.add(s.nextLine());

扫描仪使用空白作为默认分隔符。 Scanner#next() 从这个扫描器中查找并返回下一个完整的标记。一个完整的 token 之前和之后是与定界符模式匹配的输入。

您还可以使用 Scanner#useDelimiter(delim) 将扫描器的分隔符设置为下一行(\n) .

s = new Scanner(getResources().openRawResource(R.raw.sample)).useDelimiter("\n");
while (s.hasNextLine()){
sampleList.add(s.next());
}

现在您可以使用 Scanner.next(),因为它使用下一行 (\n) 作为分隔符。

关于java - 从 Android 原始资源文件中扫描句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15047275/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com