java 读取文件和写入文件的案例

本文介绍了一种方法,用于检查文件中是否存在特定行,如果存在则进行修改,否则将其添加到指定位置。通过使用Java代码实现了这一功能,确保配置参数能够得到正确的更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:

在一个I文件中查看是否有这一行,有的话修改,没有的话添加到指定位置。

文件内容:

aaa

bbb

ccc=1

ddd=2

eee=3



before => Exec['install-zz_825_zz-master-002'],
 }
  user { "mysql825":
      ensure  => present,
      shell => '/sbin/nologin',
      before => Exec['install-zz_825_zz-master-002'],
  }
  exec {
      "install-zz_825_zz-master-002":
      cwd => '/opt',
      command => "sh /opt/shell/installServer_new.sh /mysqldata 825 mysql5.5 600",
      before => Exec['createUser-zz_825_zz-master-002'],
   }
   
   exec { 'createUser-zz_825_zz-master-002' :
       cwd => '/opt',
       command => 'sh /opt/shell/createUser_new.sh /mysqldata 825 mysql5.5 1y1fo3 esny3pnhthlv',
       require => Exec['install-zz_825_zz-master-002'],
       tries => 3,
       try_sleep => 10,
   }
}

ggg 下面的为执行脚本,aaa--ggg为配置参数,查看写入的配置参数,是否有,有的话替换,没有的话紧跟eee后面添加。

代码:

FileWriter writer  = null;
       try{
           String a = "C:\\Users/Administrator/Desktop/aaa.txt";
        
           StringBuffer  buffer = new StringBuffer();
           StringBuffer  buffer1 = new StringBuffer();
           BufferedReader reader = null;
           reader = new BufferedReader(new InputStreamReader(new FileInputStream(a)));
          BufferedReader reader2 = new BufferedReader(new InputStreamReader(new FileInputStream(a)));
           String s ;
           String s2;
           while((s=reader.readLine())!=null){
               System.out.println(s);
               if(s.trim().indexOf("bbb")!=-1){
                buffer.append("bbb=2\r\n");   
               }else{
                   buffer.append(s+"\r\n");
               }
           }
           if(buffer.indexOf("bbb=2")==-1){
           System.out.println("ww");
               while((s2=reader2.readLine())!=null){
               System.out.println("s"+s2);
                   if(s2.trim().indexOf("eee")!=-1){
                       buffer1.append(s2+"\r\n");
                    buffer1.append("bbb=1\r\n");
                }else{
                    buffer1.append(s2+"\r\n");    
                }
               }
                writer = new FileWriter(a,false);
                 writer.write(buffer1.toString());
          
           }else{
           writer = new FileWriter(a,false);
           writer.write(buffer.toString());
           }
           writer.flush();
           writer.close();
          
       }catch (Exception e) {
        // TODO: handle exception
    }
       
       
   }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值