以下是完成操作的代码示例:\n\njava\nimport java.io.BufferedReader;\nimport java.io.FileReader;\nimport java.io.IOException;\nimport java.util.HashMap;\nimport java.util.Map;\n\npublic class Main {\n public static void main(String[] args) {\n // 1) 使用IO的知识点,获取文件的内容\n String filePath = "D:/calcCharNum.txt";\n String fileContent = getFileContent(filePath);\n\n // 2) 创建一个Map集合将统计文件中各个字母出现次数\n Map<Character, Integer> charCountMap = countChars(fileContent);\n\n // 3) 遍历Map集合并按照指定格式打印\n printCharCount(charCountMap);\n }\n\n // 获取文件内容\n private static String getFileContent(String filePath) {\n StringBuilder contentBuilder = new StringBuilder();\n try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {\n String line;\n while ((line = br.readLine()) != null) {\n contentBuilder.append(line);\n }\n } catch (IOException e) {\n e.printStackTrace();\n }\n return contentBuilder.toString();\n }\n\n // 统计字符出现次数\n private static Map<Character, Integer> countChars(String content) {\n Map<Character, Integer> charCountMap = new HashMap<>();\n for (char c : content.toCharArray()) {\n charCountMap.put(c, charCountMap.getOrDefault(c, 0) + 1);\n }\n return charCountMap;\n }\n\n // 按指定格式打印字符出现次数\n private static void printCharCount(Map<Character, Integer> charCountMap) {\n StringBuilder sb = new StringBuilder();\n for (Map.Entry<Character, Integer> entry : charCountMap.entrySet()) {\n sb.append(entry.getKey()).append("(").append(entry.getValue()).append("),");\n }\n // 删除最后一个逗号\n sb.deleteCharAt(sb.length() - 1);\n System.out.println(sb.toString());\n }\n}\n\n\n请注意,该代码假设文件中只包含字母,并且字母均为大写。如果文件中包含其他字符或小写字母,需要根据实际情况进行修改。

Java字符统计:使用IO读取文件并统计字母出现次数

原文地址: https://www.cveoy.top/t/topic/p7on 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录