计算文本文件中的字符

时间:2015-02-10 22:54:18

标签: java

我正在尝试创建一个从文件中读取的程序,并计算多少个小写字母,大写字母,空格字符(制表符,输入等)以及其他所有内容。

这是我的代码,它显示了正确数量的字母,但由于某种原因,“其他”计数器显示的方式应该更多。谁知道我做错了什么?

    File file = new File("C:\\Temp\\Test.txt");
    Scanner s = new Scanner(file).useDelimiter("");

    for (int i = 0; i < file.length(); i++) {
        char c = s.next().charAt(0);

        if (Character.isLetter(c)) {
            if (Character.isLowerCase(c)) {
                isLower++;
            } else {
                isUpper++;
            }
        } else if (Character.isSpaceChar(c) || (c == '\n') || (c == '\t')) {
            isSpace++;
        } else {
            isOther++;
        }

    }

1 个答案:

答案 0 :(得分:0)

isOther计数器包含\ r \ n另外的东西,因为utf8字符乘以2.检查编码并检查文件格式。