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

作者:MagicGGGGGGGGGGG 时间:2023-08-31 12:32:21 

首先是按行读取字符串


import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;

public class TxtChange {
public static void main(String[] args){
 File file=new File("E:\\oldData.txt");
 BufferedReader reader=null;
 String temp=null;
 int line=1;
 try{
   reader=new BufferedReader(new FileReader(file));
   while((temp=reader.readLine())!=null){
    // System.out.println("第"+line+"行:"+temp);

String string=AnalyzeStr.getAnalyze().getNewString(temp);//调用分割方法
    System.out.println(string);
    AnalyzeStr.getAnalyze().saveRecordInFile(string);//调用按行存储字符串
    line++;
   }
 }
 catch(Exception e){
  e.printStackTrace();
 }
 finally{
  if(reader!=null){
   try{
    reader.close();
   }
   catch(Exception e){
    e.printStackTrace();
   }
  }
 }
}
}

按照空格分割字符串并重新组合成新的字符串

空是”\s”,是转义字符,需要使用”\s”,“+”代表一个或者多个空格


public String getNewString(String fileName){
 String str1="";
 String str2="";
 String str3="";
 String []arrayStr=fileName.split("\\s+");
 str1="\n\t\t"+arrayStr[0];
 str2="\t"+arrayStr[1];
 str3="\t"+arrayStr[2];
 return str1+str2+str3;
}

然后按行保存字符串方法,path是保存的路径,例如“D://test.txt”


//追加记录
public void saveRecordInFile(String str) {
 File record = new File(path);//记录结果文件
 try {
  if (!record.exists()) {

File dir = new File(record.getParent());
   dir.mkdirs();
   record.createNewFile();
  }
  FileWriter writer = null;
  try {
   // 打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件
   writer = new FileWriter(record, true);
   writer.write(str);
  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   try {
    if (writer != null) {
     writer.close();
    }
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
 } catch (Exception e) {
  System.out.println("记录保存失败");
 }
}

来源:https://blog.csdn.net/hdg745979749/article/details/78049013

标签:Java,文件,空格,字符串
0
投稿

猜你喜欢

  • SpringBoot整合Activiti工作流框架的使用

    2022-03-02 12:32:44
  • Spring @Bean注解深入分析源码执行过程

    2021-11-30 10:10:36
  • Java程序顺序结构中逻辑控制语句详解流程

    2023-06-10 17:54:08
  • pagehelper插件显示total为-1或1的问题

    2021-11-04 01:02:39
  • springcloud-gateway集成knife4j的示例详解

    2023-11-29 08:56:44
  • android加密参数定位实现方法

    2022-05-03 08:28:55
  • android 之Spinner下拉菜单实现级联

    2023-01-24 04:15:45
  • Java实战宠物医院预约挂号系统的实现流程

    2022-12-28 03:07:52
  • ShardingSphere jdbc集成多数据源的实现步骤

    2023-11-25 07:54:56
  • C#泛型用法实例分析

    2021-10-16 14:01:49
  • Android 中StringBuffer 和StringBuilder常用方法

    2023-10-29 08:39:26
  • java单例模式学习示例

    2022-03-29 19:03:41
  • Java实现MD5消息摘要算法

    2023-06-18 06:37:35
  • Java上传文件进度条的实现方法(附demo源码下载)

    2023-06-06 11:06:16
  • java 查找字符串所在的位置代码

    2023-12-22 21:48:17
  • 解决Android使用Handler造成内存泄露问题

    2022-11-10 09:07:13
  • android截屏功能实现代码

    2022-02-02 19:45:00
  • Spring Boot配置接口WebMvcConfigurer的实现

    2023-11-27 23:28:50
  • jenkins+Maven从SVN上构建项目的方法

    2022-07-09 04:42:37
  • Java C++实现相同MD5加密算法的方式

    2023-10-12 12:26:02
  • asp之家 软件编程 m.aspxhome.com