Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法

首先,我们需要了解如何从键盘读取输入并保存到txt文件中,接着再通过编程实现统计每个单词出现次数。下面是完整攻略:

1. 从键盘读取输入并保存到txt文件中

我们可以使用Scanner类从键盘获取用户输入,将输入的内容保存到txt文件中。代码如下:

import java.io.*;

public class Main {
  public static void main(String[] args) throws IOException {
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入要保存到txt文件的内容:");
    String inputStr = scanner.nextLine();
    BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"));
    writer.write(inputStr);
    writer.close();
    System.out.println("内容已保存到output.txt文件中。");
  }
}

以上代码中,我们先通过Scanner类从键盘获取用户输入的内容,再使用BufferedWriter写入到txt文件中。需要注意的是,如果要对txt文件进行追加写入,则需要将FileWriter对象的参数设置为true,以便以追加方式添加内容到txt文件中。

2. 统计每个单词出现次数

接下来,我们需要读取保存在txt文件中的内容,对每个单词出现的次数进行统计,并输出统计结果。代码如下:

import java.io.*;

public class Main {
  public static void main(String[] args) throws IOException {
    BufferedReader reader = new BufferedReader(new FileReader("output.txt"));
    String line = reader.readLine();
    reader.close();

    String[] words = line.split("\\s+"); // 根据空格分割每个单词
    Map<String, Integer> wordCountMap = new HashMap<>();

    for (String word : words) {
      if (wordCountMap.containsKey(word)) {
        int count = wordCountMap.get(word);
        wordCountMap.put(word, count + 1);
      } else {
        wordCountMap.put(word, 1);
      }
    }

    for (Map.Entry<String, Integer> entry : wordCountMap.entrySet()) {
      System.out.println("单词 " + entry.getKey() + " 出现了 " + entry.getValue() + " 次。");
    }
  }
}

以上代码中,我们首先使用BufferedReader从txt文件中读取内容,再根据空格对每个单词进行分割,并使用HashMap对象统计每个单词出现的次数。最后遍历HashMap对象,输出每个单词和出现次数的统计结果。

示例说明

示例1

以下是示例输入:

Hello, world! This is a test.

运行上述程序后,输出如下结果:

单词 Hello, 出现了 1 次。
单词 world! 出现了 1 次。
单词 This 出现了 1 次。
单词 is 出现了 1 次。
单词 a 出现了 1 次。
单词 test. 出现了 1 次。

示例2

以下是示例输入:

Hello world! This is a test. Hello, this is another test.

运行上述程序后,输出如下结果:

单词 Hello 出现了 2 次。
单词 world! 出现了 1 次。
单词 This 出现了 1 次。
单词 is 出现了 2 次。
单词 a 出现了 1 次。
单词 test. 出现了 2 次。
单词 another 出现了 1 次。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • java 非对称加密算法RSA实现详解

    Java 非对称加密算法RSA实现详解 什么是非对称加密算法? 非对称加密算法指的是在加密和解密过程中分别使用两个不同的密钥,即公钥和私钥。公钥可以公开,任何人都可以使用公钥对信息进行加密,但只有私钥持有者才能解密被加密的信息。非对称加密算法具有安全性高、密钥分配方便等优点,因此被广泛应用于数据传输、数字证书等场景。 RSA算法简介 RSA算法是一种典型的非…

    Java 2023年5月19日
    00
  • 详解JAVA中转义字符

    当我们需要在Java中表示一些特殊含义的字符时,会用到转义字符,也就是用一个反斜杠(\)将特殊字符进行转义。Java中转义字符的使用可以大大丰富字符串的表达能力,让我们来详解一下。 转义字符的常见用法 在Java中,转义字符是以反斜杠(\)开头,后面紧跟着代表特殊含义的字符。下面是Java中经常用到的转义字符及其对应的含义: \n:换行符 \t:制表符 \’…

    Java 2023年5月27日
    00
  • java实现上传图片进行切割的方法

    下面我来详细讲解一下Java实现上传图片进行切割的方法。 1. 背景 在Web开发中,上传图片并对其进行切割是非常常见的操作。通常情况下,我们需要将大图片切割成多张小图片,以方便我们的页面显示。那么如何实现这样的功能呢? 2. 技术实现 2.1 文件上传 首先要实现的便是文件上传,可以采用常用的一些Java框架,如SpringMVC或Struts2来实现。 …

    Java 2023年5月20日
    00
  • ssi框架学习总结(mvc三层架构)

    我来分享一下“SSI框架学习总结(MVC三层架构)”的完整攻略,希望对你有所帮助。 什么是SSI框架 SSI (Server Side Include),即服务器端包含,它是一种通过服务器端处理动态内容的技术。SSI框架是一种基于MVC(Model-View-Controller)的三层架构,主要由数据层、业务层和表示层组成。其中,数据层负责数据存储和数据访…

    Java 2023年5月20日
    00
  • springmvc4+hibernate4分页查询功能实现

    让我来详细讲解一下“springmvc4+hibernate4分页查询功能实现”的完整攻略。 1. 前言 在开发Web应用过程中,分页查询功能是经常会用到的一项功能。SpringMVC和Hibernate是当前较为流行的Web开发框架,结合起来使用可以实现很好的分页功能。下面,我们将详细说明如何使用SpringMVC和Hibernate实现分页查询功能。 2…

    Java 2023年6月15日
    00
  • Linux系统中Tomcat环境配置方式

    下面是详细讲解 Linux 系统中 Tomcat 环境配置方式的完整攻略: 1. 下载Tomcat 首先,需要从官方网站下载 Tomcat,下载地址:https://tomcat.apache.org/download-90.cgi 在这里我们选择下载 Tomcat 9.0 版本,下载完成后解压。 2. 配置环境变量 将 Tomcat 解压到目标位置,比如 …

    Java 2023年5月19日
    00
  • SpringMVC实现数据绑定及表单标签

    讲解“SpringMVC实现数据绑定及表单标签”的完整攻略如下: 1. 数据绑定 SpringMVC通过数据绑定将请求参数映射到控制器方法的入参中。实现数据绑定需要在控制器方法入参前面添加@ModelAttribute注解,例如: @RequestMapping(value="/user") public String showUserI…

    Java 2023年6月15日
    00
  • JavaWeb实现文件的上传与下载

    JavaWeb实现文件的上传与下载 文件上传的实现步骤 文件上传指的是将本地的文件信息上传到服务器中的指定目录。JavaWeb 中实现文件上传需要以下步骤: 创建表单,设置 enctype=”multipart/form-data” 属性,表示表单中包含文件上传的数据; 在服务器端获取上传的文件信息,通常使用 request.getPart() 方法获取上传…

    Java 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部