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日

相关文章

  • php使用curl模拟登录后采集页面的例子

    下面是php使用curl模拟登录后采集页面的攻略。 1. 了解curl模拟登录的基本原理 在使用curl模拟登录之前,需要了解一下基本的原理。curl是一个命令行工具,能够通过HTTP或FTP发送请求并获取资源,同时也可以通过数据请求来模拟登录网站。 登录页面的基本原理是通过向服务器发送用户名和密码进行验证,然后在浏览器中直接跳转到用户主页。使用curl模拟…

    Java 2023年6月15日
    00
  • 使用smartupload组件实现jsp+jdbc上传下载文件实例解析

    使用smartupload组件实现JSP+JDBC上传下载文件,需要经过以下步骤: 下载SmartUpload组件 从官方网站 http://smartupload.io/ 下载最新版本的SmartUpload组件(smartupload.jar),并将其添加到项目的classpath中。 配置Web.xml 在Web.xml中配置SmartUpload的处…

    Java 2023年6月15日
    00
  • 使用maven-archetype-plugin现有项目生成脚手架的方法

    使用maven-archetype-plugin插件可以快速生成符合规范的项目结构。下面是使用该插件生成脚手架的方法: 确保已经安装了Maven,并配置好了环境变量; 进入项目工程的根目录,执行以下命令: mvn archetype:create-from-project 然后等待项目构建成功。构建完成后,会在生成一个target目录。该目录下会生成一个ma…

    Java 2023年5月20日
    00
  • 手把手带你入门 Spring Security的具体流程

    下面我将详细讲解“手把手带你入门 Spring Security的具体流程”的攻略,包含以下几个步骤: 步骤一:添加依赖 首先,在pom.xml文件中添加Spring Security的依赖,如下所示: <dependency> <groupId>org.springframework.security</groupId>…

    Java 2023年5月20日
    00
  • 将Excel中数据导入到Access数据库中的方法

    将Excel中数据导入到Access数据库中的方法可以通过以下步骤实现: 第一步:准备工作 在开始之前,需要完成以下准备工作: 熟悉Excel软件和Access数据库软件的基本操作; 确定好数据源Excel文件和目标数据库Access文件的路径; 确定好要将Excel中的哪些数据导入到Access中。 第二步:准备Access数据库 在开始导入数据之前,需要…

    Java 2023年5月19日
    00
  • Java11 发布前抓紧掌握这些新特性

    Java 11 发布前抓紧掌握这些新特性 Java 11 是一个重要的版本,其中包含了许多有用的新特性。本文将介绍一些最重要的新特性,并向您展示如何使用它们。 1. 局部变量类型推断 Java 10 引入了局部变量类型推断,Java 11 对其进行了改进。现在,您可以使用 var 关键字来声明局部变量,让编译器自动推断出变量类型。例如: var x = &q…

    Java 2023年5月24日
    00
  • 使用java实现百万级别数据导出excel的三种方式

    我来详细讲解一下“使用Java实现百万级别数据导出Excel的三种方式”的完整攻略。 一、背景介绍 随着数据量的急剧增长,在实际工作中,我们经常需要将海量数据导出到Excel中进行分析和处理。但是当数据量达到百万甚至千万级别时,传统的导出方式会遭遇一系列的问题,比如内存溢出、导出速度过慢等。在这种情况下,我们需要使用一些高效、稳定的方式实现数据的导出。本文将…

    Java 2023年5月20日
    00
  • spring boot打包成war包的页面如何存放

    将Spring Boot应用程序打包成WAR包可以让我们将应用程序部署到支持WAR包的应用服务器中。在打包成WAR包时,需要注意如何存放静态页面资源。下面是一个完整的攻略: 1. 修改pom.xml文件 首先需要将pom.xml文件中的打包方式由jar改为war。在pom.xml文件中添加以下代码: <packaging>war</pack…

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