java - 字符数错误(文件中的字符串操作)--Java

标签 java string java.util.scanner java-io

我目前正在测试一个程序,其目的是导入文件并使用字符串操作查找该文件中的字符数。

我目前正在使用System.out.println(fileone.length());这样做。然而,每次我尝试运行该程序时,它都会读取错误的字符数,实际上它每次都会给出相同的错误数字。下面是程序的输出。

我的名字是萨姆·泰勒 54

可以看到文件中的单词被显示出来,旁边是字符数,这显然是错误的,据我自己数了一下,应该是19个,包括空格。

这是读取文件并给出字符编号的代码。

你能看出什么问题吗?

非常感谢任何帮助。

Scanner ourScanner = new Scanner(new File(fileone));
System.out.println();

while(ourScanner.hasNextLine()) 
{
    System.out.print (ourScanner.nextLine() + "\t");
    count++;
    if (count%4 == 0)
        System.out.println();               
    }
}           
//System.out.println ("\n\n" + count + " \ntotal strings found.");
System.out.println(fileone.length());

最佳答案

您正在检查表示文件路径 (fileone) 的 String 的长度,而不是扫描的实际文件,因此在给定上下文的情况下它将保持不变。

如果您要计算行数,只需打印您的 count 变量即可。

您还可以通过多种方法从 File 对象检查文件 length 或特定字符长度(因为文件系统可能分配比实际更多的空间)用于文件),您可以通过使用 FileReader 等进行迭代来对它们进行计数。

关于java - 字符数错误(文件中的字符串操作)--Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42816063/

相关文章:

java - 带扫描仪的 ArrayList 无法正常工作

java - 从文本文件中提取的数据存储在变量中时出现错误

c - 插入节点并按字母顺序排列

比较 2 个字符串并获得错误预期表达式

java - 如何在另一个类中使用在循环内部定义的字符串?

java - Weblogic ApplicationLifecycleListener 未触发

java - 扫描仪在使用 next() 或 nextFoo() 后跳过 nextLine()?

java - 我的数组列表到 .txt 文件程序给了我几个错误

java - Spring Reactive 使用 FLUX 或 MONO 使用 POST

java - 如何使用 args4j 访问子命令中的主上下文来实现子命令处理程序?