Java 按行读取文件按行写入文件并以空格分割字符串的方法

要实现Java按行读取文件并以空格分割字符串的方法,可以使用以下步骤:

  1. 使用Java中的BufferedReader类读取文件中的每一行数据。

  2. 将每一行数据使用Java中的String类的split方法按照空格分割成字符串数组。

  3. 将分割后的字符串数组转换为每个元素带空格的字符串,并写入到输出文件中。

以下是两个示例:

示例一:

假设有input.txt文件内容为:

hello world
a b c d
1 2 3 4

实现按行读取文件并以空格分割字符串的代码如下:

import java.io.*;

public class FileReadAndSplit {
    public static void main(String[] args) throws IOException {
        String inputFile = "input.txt";
        String outputFile = "output.txt";
        BufferedReader reader = new BufferedReader(new FileReader(inputFile));
        BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
        String line = null;
        while ((line = reader.readLine()) != null) {
            String[] words = line.split("\\s+");
            StringBuilder outputLine = new StringBuilder();
            for (String word : words) {
                outputLine.append(word).append(" ");
            }
            writer.write(outputLine.toString().trim());
            writer.newLine();
        }
        reader.close();
        writer.close();
    }
}

运行结果为:

hello world
a b c d
1 2 3 4

示例二:

假设有input2.txt文件内容为:

apple banana carrot
dog cat tiger lion

实现按行读取文件并以空格分割字符串的代码如下:

import java.io.*;

public class FileReadAndSplit2 {
    public static void main(String[] args) throws IOException {
        String inputFile = "input2.txt";
        String outputFile = "output2.txt";
        BufferedReader reader = new BufferedReader(new FileReader(inputFile));
        BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
        String line = null;
        while ((line = reader.readLine()) != null) {
            String[] words = line.split("\\s+");
            StringBuilder outputLine = new StringBuilder();
            for (String word : words) {
                outputLine.append(word).append(" ");
            }
            writer.write(outputLine.toString().trim());
            writer.newLine();
        }
        reader.close();
        writer.close();
    }
}

运行结果为:

apple banana carrot
dog cat tiger lion

以上是Java按行读取文件并以空格分割字符串的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java 按行读取文件按行写入文件并以空格分割字符串的方法 - Python技术站

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

相关文章

  • SpringBoot Knife4j在线API文档框架基本使用

    下面是SpringBoot Knife4j在线API文档框架基本使用的完整攻略。 1. Knife4j简介 Knife4j是SpringBoot的开源在线API文档管理框架,它基于Swagger实现,可以让Java开发者非常方便地管理和维护API文档,同时也提供了友好的UI界面,使得API文档的查看更加直观。同时,Knife4j部署简单、使用方便,非常适合在…

    Java 2023年5月19日
    00
  • java取两个字符串的最大交集

    Java取两个字符串的最大交集的算法可以通过动态规划(Dynamic Programming)来实现,其中最长公共子串(Longest Common Substring, LCS)就是该问题的一个特例。 以下是完整的攻略: 步骤1:定义状态 定义一个二维数组 dp[i][j],表示字符串 a 的前 i 个字符和字符串 b 的前 j 个字符的最长公共子串长度。…

    Java 2023年5月27日
    00
  • Spring Boot编写拦截器教程实例解析

    下面是“Spring Boot编写拦截器教程实例解析”的完整攻略。 1. 什么是拦截器? 在 Spring Boot 中,拦截器(Interceptor)是一种 AOP(面向切面编程)技术,它可以在请求到达目标方法之前,或者在请求结束之后,实现相应的拦截操作。拦截器可以用来记录日志、验证用户权限、对请求参数进行处理等。 2. Spring Boot 中实现拦…

    Java 2023年5月31日
    00
  • Java字节码操纵库的作用是什么?

    Java字节码操纵库是指一些Java类库,它们在Java字节码层次上操作Java类的定义和结构。这种操纵方式不涉及源代码,适用于各种Java开发和工具套件。Java字节码操纵库不仅可以读取Java类文件的字节码,而且还可以根据需要修改类的数据和结构信息。Java字节码操纵库的主要用途是生成字节码、动态修改字节码以及分析字节码等。下面将介绍如何使用Java字节…

    Java 2023年5月11日
    00
  • 如何使用Java模拟退火算法优化Hash函数

    使用Java模拟退火算法优化Hash函数的完整攻略如下: 1. 了解退火算法基本原理 退火算法来源于物理学中的热力学原理,这个算法模拟了物质从高温到低温的过程,利用了概率方法找到全局最优解。 退火算法的基本步骤如下: 初始化温度和初始状态 外层循环直到达到停止条件 内层循环直到达到迭代条件 在当前状态的邻域内随机选择一个新状态 计算新状态的能量 判断是否接受…

    Java 2023年5月19日
    00
  • 老生常谈Java字符串进阶(必看篇)

    老生常谈Java字符串进阶(必看篇) 一、字符串不可变性 1.1 什么是字符串不可变性? Java中的字符串是immutable(不可变)的,即一旦字符串被创建,就不能够被修改。这意味着,每次对字符串进行修改操作时,都会创建一个新的字符串。例如: String str = "hello"; str = str + " world…

    Java 2023年5月26日
    00
  • json对象和formData相互转换的方式详解

    下面是“json对象和formData相互转换的方式详解”的完整攻略。 简介 在前端开发中,我们经常需要将数据从JSON对象转换为FormData对象,或者反过来。FormData对象用于在表单中传输数据,而JSON对象用于在不同应用程序之间传递数据。本文将介绍如何将JSON对象转换为FormData对象,以及如何将FormData对象转换为JSON对象。 …

    Java 2023年5月26日
    00
  • Android实现与Apache Tomcat服务器数据交互(MySql数据库)

    接下来我将详细讲解“Android实现与Apache Tomcat服务器数据交互(MySql数据库)”的完整攻略。 1. 确定需要的框架和工具 在实现Android与Apache Tomcat服务器数据交互(MySql数据库)之前,你需要明确需要的框架和工具。例如: Android Studio:用于开发Android应用程序; Apache Tomcat:…

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